No Naci Caminando Buscador

Envia sms gratis a Personal, Tigo; Claro y Vox...

viernes, 8 de octubre de 2010

STI-UCI SEMINARIO DE TECNOLOGIA DE LA INFORMACION

Este evento denominado STI (Seminario de Tecnología de la Información) es organizado por los alumnos del 5to año de la carrera de Ingeniería Informática correspondiente a la cátedra de Seminario, con el patrocinio de la carrera de Ingeniería Informática de la Universidad Católica “Nuestra Señora de la Asunción” Campus Itapúa.


30 DE OCTUBRE DEL 2010..
REGISTRO EN : http://sti-uci.com/

sábado, 28 de noviembre de 2009

cómo instalar CodeIgniter?

cómo instalar CodeIgniter?
Es muy sencillo de instalar a diferencia de otros frameworks :



Paso 1 – Descarga: siempre trabaja con la ultima version que dispongas del CodeIgniter...

Paso 2 – Subir: una vez descargado y descomprimido notaras dos carpetas (system y user_guide), un index.php y un license.txt. Subiremos el index.php y la carpeta system. La carpeta user_guide contiene la misma guía que esta online, amenos que desees incluirla.

Donde pego esto? Simplemente entra a donde tengas instalado tu servidor busca la carpeta WWW y dentro podrias crear una carpeta Con el nombre de tu trabajo alli inserta los archivos mensionados...

Paso 3 – Configuración: Abrir el archivo application/config/config.php y modifica la siguiente linea:

$config['base_url'] = "http://127.0.0.1/CodeIgniter/";

Aquí pon tu URL base, dónde esté el index.php que subimos en el paso 2. No olvodes de la “/” final, muy importante.

Si usas una base de datos ve a application/config/database.php y configuralos parámetros según tu base de datos. Basicamente son estos.

$db['default']['hostname'] = "localhost";
$db['default']['username'] = "";
$db['default']['password'] = "";
$db['default']['database'] = "";

Si usas otro motor de base de datos que no sea mysql también debes cambiarlo:

$db['default']['dbdriver'] = "mysql";


Paso 4 – Prueba: si esta todo correcto y accedes a tu URL....

Error????

Accedo a la URL pero me dice “404 Page not found”

A veces, sel sistema de detección de los servidores no funciona como debería. Cambia en el application/config/config.php:

$config['uri_protocol'] = "AUTO";

por otro método como: PATH_INFO, QUERY_STRING, REQUEST_URI, ORIG_PATH_INFO.

martes, 29 de septiembre de 2009

CodeIgniter



CodeIgniter es un framework para PHP pensado para ofrecer un alto rendimiento, además es bastante ligero y fácilmente configurable.

aqui les dejo un link para que se bajen la guia de usuarios totalmente en español:


Guia_en_español

jueves, 14 de mayo de 2009

Criteria para consulta entre dos fechas

veamos la necesidad de ejecutar la siguiente consulta sql:

select * from tabla where fecha_tabla >= '$fechainicio' and fecha_tabla <= '$fechafin',

traduscamos usando Criteria

$c = new Criteria();
$criterion = $c->getNewCriterion(TablaPeer::FECHA_TABLA , date(’Y-m-d’, $fechainicio), Criteria::GREATER_EQUAL );
$criterion->addAnd($c->getNewCriterion(TablaPeer::FECHA_TABLA , date(’Y-m-d’, $fechafin), Criteria::LESS_EQUAL ));
$c->add($criterion);
$dato = TablaPeer::doSelect($c);

NOta: la sintaxis usada puede generar errores dependiendo la version de tu Symfony puedes intentar lo siguiente en caso de no funcionarte

$c = new Criteria();
$c->add(self::FECHA_TABLA , date(’Y-m-d’, $fechainicio), Criteria::GREATER_EQUAL);
$c->add(self::FECHA_TABLA , date(’Y-m-d’, $fechafin), Criteria::LESS_EQUAL);
$dato = TablaPeer::doSelect($c);

domingo, 26 de abril de 2009

controlar el ingeso de numeros y descartando los demas caracteres

suponiendo la necesidad de ingresar en un campo solamente caracteres numericos y descartar los demas caracteres del teclado construyamos una funcion que filtre en el momento del tipeo cada caracter valido.

esta funcion esta hecha en js:


creemos el cuadro de texto donde ingresaremos los datos y llamaremos a la funcion:

jueves, 23 de abril de 2009

buscador ... llamado desde una ventana padre.

Desarrollar un buscador que sea llamado desde una ventana principal, abriendose en una ventana hija y refrescando un valor a la ventana padre...
( desarrollo manual... utilizado para Symfony.)

el principio es simple crea un boton en la vista donde desees reflejar el dato buscado.. para que este boton dispare la funcion que habrira la ventana utilizaremos funciones js.

el codigo para crear el boton es el que sigue:



la funcion js necesaria para levantar la nueva pagina es esta:





en tu accion class agrega estas funciones para tu buscador:


en tu template agrega el codigo para tu buscador



recuerda duplicar esta vista una llamada listconfitroSuccess.php copia esta misma y renombrala a listarSuccess.php

agrega en el template la vista rescateSuccess.php con el siguiente codigo




con esto el buscador esta terminado... de no funcionarte algo contactame,, saludos

miércoles, 8 de abril de 2009

CODIGO MODIFICADO PARA HACER AUDITORIA EN SYMFONY GENERADO POR EL PROPEL INIT


/**
* banco actions.
*
* @package click
* @subpackage banco
* @author Your name here
* @version SVN: $Id: actions.class.php 12474 2008-10-31 10:41:27Z fabien $
*/

class bancoActions extends autobancoActions
{


public function executeIndex($request)
{
return $this->forward('banco', 'list');
}

public function executeList($request)
{
$this->processSort();

$this->processFilters();

$this->filters = $this->getUser()->getAttributeHolder()->getAll('sf_admin/banco/filters');

// pager
$this->pager = new sfPropelPager('Banco', 10);
$c = new Criteria();
$this->addSortCriteria($c);
$this->addFiltersCriteria($c);
$this->pager->setCriteria($c);
$this->pager->setPage($this->getRequestParameter('page', $this->getUser()->getAttribute('page', 1, 'sf_admin/banco')));
$this->pager->init();
// save page
if ($this->getRequestParameter('page')) {
$this->getUser()->setAttribute('page', $this->getRequestParameter('page'), 'sf_admin/banco');
}
}

public function executeCreate($request)
{
return $this->forward('banco', 'edit');
}

public function executeSave($request)
{

return $this->forward('banco', 'edit');
}


public function executeDeleteSelected($request)
{
$this->selectedItems = $this->getRequestParameter('sf_admin_batch_selection', array());

try
{
foreach (BancoPeer::retrieveByPks($this->selectedItems) as $object)
{
$object->delete();
}
}
catch (PropelException $e)
{
$request->setError('delete', 'Could not delete the selected Bancos. Make sure they do not have any associated items.');
return $this->forward('banco', 'list');
}

return $this->redirect('banco/list');
}

public function executeEdit($request)
{
$this->banco = $this->getBancoOrCreate();

if ($request->isMethod('post'))
{
$this->updateBancoFromRequest();

try
{
if(($this->getRequestParameter('idbanco'))!= '' || ($this->getRequestParameter('idbanco'))!=null)
{
$this->saveBanco($this->banco); ///////////////////////////////////////////////////////////////////
$this->Aupostupdate($this->getRequestParameter('idbanco'));//para auditar despues del update agragego el id para mi criteria//
} ///////////////////////////////////////////////////////////////////
else
{
$this->saveBanco($this->banco); ///////////////////////////////////////////////////////////////////
$this->Ausave();//para auditar despues del save, agragego el id para mi criteria//
} ///////////////////////////////////////////////////////////////////


}
catch (PropelException $e)
{
$request->setError('edit', 'Could not save the edited Bancos.');
return $this->forward('banco', 'list');
}

$this->getUser()->setFlash('notice', 'Your modifications have been saved');

if ($this->getRequestParameter('save_and_add'))
{
return $this->redirect('banco/create');
}
else if ($this->getRequestParameter('save_and_list'))
{
return $this->redirect('banco/list');
}
else
{
return $this->redirect('banco/edit?idbanco='.$this->banco->getIdbanco());
}
}
else
{
$this->labels = $this->getLabels();
}
}

public function executeDelete($request)
{
$this->banco = BancoPeer::retrieveByPk($this->getRequestParameter('idbanco'));
$this->forward404Unless($this->banco);

try
{ //////////////////////////////////////////////////
$this->Audelete($this->getRequestParameter('idbanco'));//para auditar agragego el id para mi criteria ///
$this->deleteBanco($this->banco); //////////////////////////////////////////////////
}
catch (PropelException $e)
{
$request->setError('delete', 'Could not delete the selected Banco. Make sure it does not have any associated items.');
return $this->forward('banco', 'list');
}

return $this->redirect('banco/list');
}

public function handleErrorEdit()
{
$this->preExecute();
$this->banco = $this->getBancoOrCreate();
$this->updateBancoFromRequest();

$this->labels = $this->getLabels();

return sfView::SUCCESS;
}

protected function saveBanco($banco)
{
$banco->save();
}

protected function deleteBanco($banco)
{

$banco->delete();


}
protected function Audelete($id)
{ //auditando...

$b = new Criteria();
$b->add(BancoPeer::IDBANCO,$id);
$bs = BancoPeer::DoSelect($b);
foreach ($bs as $dat)
{
$valorAnt=$dat->getIdbanco().'/'.$dat->getNombreBanco();
}
$audit = new Auditoria();
$audit->setUsuarioIdusuario(1);//rescaten el usuario con sf_user->
$audit->setValorAct(''); //vacio
$audit->setValorAnt($valorAnt);
$audit->setOperacion('Delete');
$audit->setTablaModificada('Banco');
$audit->setFechaAcceso(Date('Y/m/d H:i:s '));
$audit->save();

}
protected function Audpreupdate($id)
{ //auditando antes de actualizar...
$b = new Criteria();
$b->add(BancoPeer::IDBANCO,$id);
$bs = BancoPeer::DoSelect($b);
foreach ($bs as $dat)
{
$valorAnt=$dat->getIdbanco().'/'.$dat->getNombreBanco();
}
$audit = new Auditoria();
$audit->setUsuarioIdusuario(1);//rescaten el usuario con sf_user->
$audit->setValorAct(''); //vacio
$audit->setValorAnt($valorAnt);
$audit->setOperacion('Update');
$audit->setTablaModificada('Banco');
$audit->setFechaAcceso(Date('Y/m/d H:i:s '));
$audit->save();

}
protected function Aupostupdate($id)
{ //auditando despues de actualizar...
$b = new Criteria();
$b->add(BancoPeer::IDBANCO,$id);
$bs = BancoPeer::DoSelect($b);
foreach ($bs as $dat)
{
$valorAct=$dat->getIdbanco().'/'.$dat->getNombreBanco();
}
$c = new Criteria();$c->addSelectColumn('MAX('.AuditoriaPeer::NUMERO_AUDITORIA.')');//////////////////////////////////////
$rs = AuditoriaPeer::DoSelect($c); /// rescato mi ultimo id auditoria ///
foreach ($rs as $max){$Ultimoid=$max->getNumeroAuditoria();} //////////////////////////////////////

$d = new Criteria();
$d->add(AuditoriaPeer::NUMERO_AUDITORIA,$Ultimoid);
$ce = AuditoriaPeer::doSelect($d);
foreach ($ce as $med)
{$med->setValorAct($valorAct);//solo seteo el valor vacio de Aupreupdate() por el valoractual
$med->save();
}

}
protected function Ausave()
{ //auditando despues de actualizar...
$c = new Criteria();$c->addSelectColumn('MAX('.BancoPeer::IDBANCO.')');//////////////////////////////////////
$rs = BancoPeer::DoSelect($c); /// rescato mi ultimo id Banco ///
foreach ($rs as $max){$Ultimoid=$max->getIdbanco();} //////////////////////////////////////
$b = new Criteria();
$b->add(BancoPeer::IDBANCO,$Ultimoid);
$bs = BancoPeer::DoSelect($b);
foreach ($bs as $dat)
{
$valorAct=$dat->getIdbanco().'/'.$dat->getNombreBanco();
}
$audit = new Auditoria();
$audit->setUsuarioIdusuario(1);//rescaten el usuario con sf_user->
$audit->setValorAct($valorAct);
$audit->setValorAnt(''); //vacio
$audit->setOperacion('Save');
$audit->setTablaModificada('Banco');
$audit->setFechaAcceso(Date('Y/m/d H:i:s '));
$audit->save();

}

protected function updateBancoFromRequest()
{
$banco = $this->getRequestParameter('banco');
if(($this->getRequestParameter('idbanco'))!= '' || ($this->getRequestParameter('idbanco'))!=null)
{ ///////////////////////////////////////////////////////////////////
$this->Audpreupdate($this->getRequestParameter('idbanco'));//para auditar despues del update agragego el id para mi criteria /
} ///////////////////////////////////////////////////////////////////
if (isset($banco['nombre_banco']))
{
$this->banco->setNombreBanco($banco['nombre_banco']);
}

}

protected function getBancoOrCreate($idbanco = 'idbanco')

{
if ($this->getRequestParameter($idbanco) === ''
|| $this->getRequestParameter($idbanco) === null)
{
$banco = new Banco();

}
else
{
$banco = BancoPeer::retrieveByPk($this->getRequestParameter($idbanco));

$this->forward404Unless($banco);
}

return $banco;
}

protected function processFilters()
{
if ($this->getRequest()->hasParameter('filter'))
{
$this->getUser()->getAttributeHolder()->removeNamespace('sf_admin/banco/filters');

$filters = $this->getRequestParameter('filters');
if(is_array($filters))
{
$this->getUser()->getAttributeHolder()->removeNamespace('sf_admin/banco');
$this->getUser()->getAttributeHolder()->removeNamespace('sf_admin/banco/filters');
$this->getUser()->getAttributeHolder()->add($filters, 'sf_admin/banco/filters');
}
}
}

protected function processSort()
{
if ($this->getRequestParameter('sort'))
{
$this->getUser()->setAttribute('sort', $this->getRequestParameter('sort'), 'sf_admin/banco/sort');
$this->getUser()->setAttribute('type', $this->getRequestParameter('type', 'asc'), 'sf_admin/banco/sort');
}

if (!$this->getUser()->getAttribute('sort', null, 'sf_admin/banco/sort'))
{
}
}

protected function addFiltersCriteria($c)
{
if (isset($this->filters['idbanco_is_empty']))
{
$criterion = $c->getNewCriterion(BancoPeer::IDBANCO, '');
$criterion->addOr($c->getNewCriterion(BancoPeer::IDBANCO, null, Criteria::ISNULL));
$c->add($criterion);
}
else if (isset($this->filters['idbanco']) && $this->filters['idbanco'] !== '')
{
$c->add(BancoPeer::IDBANCO, $this->filters['idbanco']);
}
if (isset($this->filters['nombre_banco_is_empty']))
{
$criterion = $c->getNewCriterion(BancoPeer::NOMBRE_BANCO, '');
$criterion->addOr($c->getNewCriterion(BancoPeer::NOMBRE_BANCO, null, Criteria::ISNULL));
$c->add($criterion);
}
else if (isset($this->filters['nombre_banco']) && $this->filters['nombre_banco'] !== '')
{
$c->add(BancoPeer::NOMBRE_BANCO, strtr($this->filters['nombre_banco'], '*', '%'), Criteria::LIKE);
}
}

protected function addSortCriteria($c)
{
if ($sort_column = $this->getUser()->getAttribute('sort', null, 'sf_admin/banco/sort'))
{
// camelize lower case to be able to compare with BasePeer::TYPE_PHPNAME translate field name
$sort_column = BancoPeer::translateFieldName(sfInflector::camelize(strtolower($sort_column)), BasePeer::TYPE_PHPNAME, BasePeer::TYPE_COLNAME);
if ($this->getUser()->getAttribute('type', null, 'sf_admin/banco/sort') == 'asc')
{
$c->addAscendingOrderByColumn($sort_column);
}
else
{
$c->addDescendingOrderByColumn($sort_column);
}
}
}

protected function getLabels()
{
return array(
'banco{idbanco}' => 'Codigo Banco:',
'banco{nombre_banco}' => 'nombre Banco:',
);
}
}