Ayuda con php + postgre

arturo php phparturo en yahoo.es
Vie Nov 17 00:15:27 CLST 2006


En mi caso en particular utilizaba los combos que
dependian de otros con javascript, pero en una
oportunidad hice un combo de marcas y modelos de
vehiculos(trabajo con un erp automotriz)
y la cosa funcionaba pero la cantidad de datos que
debia cargar en la pagina eran muchos(mas de un mega y
aumentando a medida que se creaban los nuevos modelos
de vehiculos), y la descarga de las paginas se hacia
mas lenta,

asi por ejemplo tenia 20 marcas cargadas en la pagina
con sus respectivos modelos que por marca son muchos,

por lo tanto lo que hice fue que el primer combo de
marcas hiciera un submit y el segundo lo llenara de
acuerdo a la consulta hecha en ese submit,

EJEMPLO:

<select name="id_marca" onchange="this.form.action =
'<?=$url?>'; this.form.submit();">
<option value="nada">SELECCIONE</option>
<option value="1">MITSUBISHI</option>
<option value="2">NISSAN</option>
</select>
<?
$sql="select * from modelo where id_marca =
'$id_marca'";
$result=mysql_query($sql);
$numrows=mysql_num_rows($result);
?>     		
<select name="id_modelo">
<option value="nada">SELECCIONE</option>
<?
 for ($i=0;$i<$numrows;$i++){
$row=mysql_fetch_array($result);
?>
<option
value="<?=$row['id_modelo']?>"><?=$row['nombre_modelo'];?></option>
<?}?>
</select>

de esta forma se logro disminuir el "peso" de la
pagina y aumentar la velocidad de carga, lo fomo es el
tema de hacer el submit,,,, para combos con pocos
datos recomiendo el javascript, pero cuando son muchos
datos hacerlo de una forma similar a esto,(hay formas
mas finas utilizando ajax para que no se note la
recarga)

eso, disculpen por lo basico del ejemplo y la
redaccion, la verdad que tengo repoco tiempo para
responder correos de la lista,


por siaca no programo asi, en mis sistemas utilizo
ADOdb, Smarty, y un framework MVC,,


Saludos.


 --- Esteban Flores <esflores en gmail.com> escribió:

> On 11/12/06, Rodrigo Fuentealba <darkprox en gmail.com>
> wrote:
> >
> > 2006/11/12, Dagoberto Reyes
> <dagobertor en gmail.com>:
> > > Hola que tal, el link que me enviaste es
> exactamente lo que necesito
> > hacer
> > > pero, en este ejemplo trabaja con datos en duro.
> > >
> > > Lo que yo tengo son funciones combo en una clase
> y estas me traen los
> > datos
> > > directo de la bbdd.
> >
> > pues, que tal si generas con PHP y queries los
> addOption(); ?
> >
> > algo como esto (pseudocódigo):
> >
> > $query1 = 'select * from region';
> > $rs = $db->Execute($query1);
> >
> > if($rs and !$rs->EOF)
> > {
> > while(!$rs->EOF)
> > {
> >    echo('addOption('Cat1',$rs->fields['codigo'],
> $rs->fields['nombre']);
> >    $query2 = 'select * from ciudad';
> >    $rs2 = $db->Execute($query2);
> >
> >    if($rs2 and !$rs2->EOF)
> >    {
> >      while(!$rs2->EOF)
> >      {
> >       
> echo('addOption('Cat2',$rs2->fields['codigo'],
> > $rs2->fields['nombre']);
> >      }
> >    }
> > }
> > }
> >
> > >
> > > Javascript me servira para hacer esto?.
> >
> > Generando el Javascript con PHP, te funcionará de
> pelos!!! Recuerda
> > que PHP te crea la página web, y el javascript se
> ejecuta en el lado
> > cliente, una vez que la página ya se ha finalizado
> de renderizar :D
> >
> > --
> > Rodrigo Fuentealba Cartes
> > Desarrollador de Sistemas Web
> > Registered User 387639 - http://counter.li.org
> >
> >
> 
> Una vez tuve que hacer 3 combos relacionados... el
> primero era
> independiente, pero el segundo dependia del primero
> y el tercero dependia
> del segundo. (algo asi como region, provincia,
> comuna).
> 
> Utilice php y javascript, pero escribi el javascript
> en una pagina externa
> con extension php. (lo llamas desde include)
> 
> Este es un ejemplo burdo de este tipo de llamadas:
> 
> javascript.php
> <?
> //codigo javascript asignado a una variable
> ($mostrar = 'alert("hola")';)
> echo $mostrar;
> ?>
> 
> index.php
> <?
> include_once("javascript.php");
> ?>
> 
> 
> Espero te sirva :D
> 
> -- 
> Atte.
> -------------------------------
> Esteban Flores R.
> esflores en gmail.com
> 



		
______________________________________________ 
LLama Gratis a cualquier PC del Mundo. 
Llamadas a fijos y móviles desde 1 céntimo por minuto. 
http://es.voice.yahoo.com


Más información sobre la lista de distribución PHP