Foro de elhacker.net

Programación => PHP => Mensaje iniciado por: Castg! en 8 Diciembre 2009, 00:18 am



Título: Problema con filas de bbdd
Publicado por: Castg! en 8 Diciembre 2009, 00:18 am
a ver, tengo una tabla "caca" que tiene 2 columnas no, una nombre y la otra id. ahora en la tabla tengo dos valores

+---nombre---+---id---+
---Juan--------+--2-------+
+----pepe-------+4------+

y como tengo que hacer para imprimir el valor de id. yo hago asi:

Código
  1. <?php
  2. $link = mysql_connect("localhost","root","");
  3. mysql_select_db("bbdd", $link);
  4. $que = 'SELECT id FROM users';
  5. $com = mysql_query($que, $link);
  6. $total = mysql_fetch_array($com);
  7. echo $total['0'];
  8. ?>

hasta ahi bien, imprime "1" el primer valor de la columna de id. ahora pasa cuando quiero imprimir el segundo valor.

Código
  1. ...
  2. $total = mysql_fetch_array($com);
  3. echo $total['1'];
  4. ?>

me tira el error:

Citar
Notice: Undefined index: 1 in F:\Server\wamp\www\sqli\index.php on line 7


Título: Re: Problema con filas de bbdd
Publicado por: raul338 en 8 Diciembre 2009, 00:32 am
Código
  1. echo $total['1'];

 :huh: :huh: :huh:

es mysql_fetch_array te devuelve una sola fila en un array, si tu quieres pasar a la siguiente tienes que volver a llamar a mysql_fetch_array

ademas, para llamar a la primer columna, tienes que poner el cero sin comillas  :P

Código
  1. $total = mysql_fetch_array($result);
  2. echo $total[0]; // fila 1
  3. $total = mysql_fetch_array($result);
  4. echo $total[0]; // fila 2
  5. $total = mysql_fetch_array($result);
  6. echo $total[0]; // fila 3 ..........
  7.  

PD: imagina como trabaja el mysql_fetch_array con un bucle while, y entenderas mejor  ;)