Foros del Web » Programando para Internet » PHP »

Arrays con titulos en vez de indices numericos

Estas en el tema de Arrays con titulos en vez de indices numericos en el foro de PHP en Foros del Web. hola buen dia, No se cual sea el nombre correcto . Yo tengo un grid que me pide llenar su array con el nombre del ...
  #1 (permalink)  
Antiguo 11/03/2010, 14:06
Avatar de dalyla  
Fecha de Ingreso: septiembre-2005
Mensajes: 135
Antigüedad: 18 años, 7 meses
Puntos: 1
Arrays con titulos en vez de indices numericos

hola buen dia,

No se cual sea el nombre correcto . Yo tengo un grid que me pide llenar su array con el nombre del campo, yo puedo agregar datos asi:

Código PHP:
$this->Grid->CellData = array(
                array( 
'idcontador' => 0,
                       
'cveparte' => '',
                       
'descripcion' =>  '',
                       
'unidad' =>  '',
                       
'cantidad' =>  0,
                       
'costo' =>  0,
                       
'importe' =>  0,
                        ),
            ); 
Pero yo quiero llenarlo con una consulta mysql, asi:

Código PHP:
$i 0;
      while (
$row mysql_fetch_array($r))
      {
 
$this->Grid->CellData[$i]["idcontador"]    = $row['idcontador'];
      
$this->Grid->CellData[$i]["cveparte"]      = $row['cveparte'];
      
$this->Grid->CellData[$i]["descripcion"]   = $row['descripcion'];
      
$this->Grid->CellData[$i]['unidad']        = $row['unidad'];
      
$this->Grid->CellData[$i]['cantidad']      = $row['cantidad'];
      
$this->Grid->CellData[$i]['costo']         = $row['costo'];
      
$this->Grid->CellData[$i]['importe']       = $row['importe'];
$i .= 1;
      } 
Pero esto no me funciona, solo me funciona para leer datos pero no para llenarlos. Alguien sabe como hacerlo?
__________________
Ayudar a mejorar a los demas, es hacerte mejor a ti mismo ; )
  #2 (permalink)  
Antiguo 11/03/2010, 16:12
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 14 años, 11 meses
Puntos: 19
Respuesta: Arrays con titulos en vez de indices numericos

En PHP se llaman Arrays o vectores asociativos.

Mira el contador (tu $i). Si la multiplicas por 1 todo el rato no va a cambiar. Pon $i++ que es lo mismo que $i += 1, pero con menos carácteres.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it
  #3 (permalink)  
Antiguo 11/03/2010, 18:25
Avatar de dalyla  
Fecha de Ingreso: septiembre-2005
Mensajes: 135
Antigüedad: 18 años, 7 meses
Puntos: 1
Respuesta: Arrays con titulos en vez de indices numericos

Bien ya lo tengo

Código PHP:
Ver original
  1. while ($row = mysql_fetch_assoc($r))
  2.         {
  3.         $tabla[$i] =  $row;
  4.         $i = $i + 1;
  5.         }
  6.  
  7.      $this->Grid->CellData = $tabla;

Lo cual me genera este array

array(5) { [0]=> array(10) { ["idcontador"]=> string(2) "48" ["idparte"]=> string(1) "1" ["cveparte"]=> string(3) "ABC" ["descripcion"]=> string(25) "ACEITE DE BAJA CALIFORNIA" ["cantidad"]=> string(2) "25" ["costo"]=> string(6) "120.30" ["importe"]=> string(7) "3007.50" ["idrequisicion"]=> string(1) "1" ["idalmacen"]=> string(1) "1" ["unidad"]=> string(3) "PZA" } [1]=> array(10) { ["idcontador"]=> string(2) "49" ["idparte"]=> string(1) "2" ["cveparte"]=> string(3) "XYZ" ["descripcion"]=> string(6) "BUJIAS" ["cantidad"]=> string(2) "16" ["costo"]=> string(6) "250.00" ["importe"]=> string(7) "4000.00" ["idrequisicion"]=> string(1) "2" ["idalmacen"]=> string(1) "1" ["unidad"]=> string(3) "PZA" } [2]=> array(10) { ["idcontador"]=> string(2) "50" ["idparte"]=> string(1) "4" ["cveparte"]=> string(7) "08-1000" ["descripcion"]=> string(80) "FUSIBLE NORMAL 10A " ["cantidad"]=> string(2) "15" ["costo"]=> string(4) "9.08" ["importe"]=> string(6) "136.20" ["idrequisicion"]=> string(1) "3" ["idalmacen"]=> string(1) "1" ["unidad"]=> string(3) "PZA" } [3]=> array(10) { ["idcontador"]=> string(2) "56" ["idparte"]=> string(2) "14" ["cveparte"]=> string(8) "10478890" ["descripcion"]=> string(80) "MOTOR DE ARRANQUE 37MT 12 VOLT 10 DIENTES " ["cantidad"]=> string(1) "2" ["costo"]=> string(7) "4595.95" ["importe"]=> string(7) "9191.90" ["idrequisicion"]=> string(1) "0" ["idalmacen"]=> string(1) "1" ["unidad"]=> string(3) "PZA" } [4]=> array(10) { ["idcontador"]=> string(2) "61" ["idparte"]=> string(2) "33" ["cveparte"]=> string(8) "1227D940" ["descripcion"]=> string(80) "TUERCA PIÑON DIFERNCIAL " ["cantidad"]=> string(2) "32" ["costo"]=> string(5) "98.69" ["importe"]=> string(7) "3158.08" ["idrequisicion"]=> string(1) "0" ["idalmacen"]=> string(1) "1" ["unidad"]=> string(3) "PZA" } }
__________________
Ayudar a mejorar a los demas, es hacerte mejor a ti mismo ; )

Última edición por dalyla; 11/03/2010 a las 18:31
  #4 (permalink)  
Antiguo 12/03/2010, 03:29
Avatar de AnesGy  
Fecha de Ingreso: mayo-2009
Mensajes: 518
Antigüedad: 14 años, 11 meses
Puntos: 19
Respuesta: Arrays con titulos en vez de indices numericos

no está mal poner $i = $i + 1, pero es mas corto para estos casos usar el operador += , es decir $i += 1 o, ya que sólo le sumas 1, $i++.
__________________
Si alguna vez parece que soy grosero, pido perdón, es un intento fallido de ser directo.

AnesGy SD. Name it, Get it

Etiquetas: indices, php-mysql
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:40.