PHP SQL, la consulta devuelve solo una fila de datos

pregunta rápida ... mi consulta SQL está escupiendo estos datos ...

Array ( [id] => 1 [name] => Test Name [text] => This is text [image] => image.jpg ) 

Cuando hay dos filas de datos, ¿hay algún problema con mi código php?

$query = "SELECT id, name, text, image FROM categories";
    $results = mysql_query($query, $connection);
    $results = mysql_fetch_assoc($results);

preguntado el 10 de marzo de 12 a las 05:03

3 Respuestas

mysql_fetch_assoc busca una fila a la vez. Necesita recorrer el conjunto de resultados:

while(false !== ($row = mysql_fetch_assoc($results))){
    [handle $row here]
}

De los documentos (la búsqueda es su amigo):

Devuelve una matriz asociativa de cadenas que corresponde a la fila obtenida, o FALSE si no hay más filas.

Si dos o más columnas del resultado tienen los mismos nombres de campo, la última columna tendrá prioridad. Para acceder a las otras columnas del mismo nombre, debe acceder al resultado con índices numéricos utilizando mysql_fetch_row () o agregar nombres de alias. Vea el ejemplo en la descripción de mysql_fetch_array () sobre los alias.

¡Salud

respondido 10 mar '12, 05:03

Gracias Madbreakers por su ayuda. user979331

"Gracias" es bueno, pero probablemente querrá votar a favor de cualquier respuesta que le haya resultado útil y acepte la que crea que mejor responde a su pregunta. - Madbreaks

Las funciones de recuperación solo devuelven una fila a la vez. Si quieres todas las filas, tendrás que usar un bucle:

while($row = mysql_fetch_assoc($results)) {
   ... do stuff with $row
}

respondido 10 mar '12, 05:03

Gracias Marc B por tu ayuda. user979331

mysql_fetch_assoc ($ resultados) solo obtiene una fila.

http://php.net/manual/en/function.mysql-fetch-assoc.php

respondido 10 mar '12, 05:03

Respuesta incompleta. Debe proporcionar la forma de obtener todas las filas, ya que esto es obviamente lo que quiere el OP. - alex weinstein

Pensé que el ejemplo del enlace era suficiente. - djmj

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.