Foros del Web » Programando para Internet » PHP »

Todas estas consultas son lo mismo?

Estas en el tema de Todas estas consultas son lo mismo? en el foro de PHP en Foros del Web. Hola bueno solo tengo una duda. ejemplo en una consulta mysql lo normal se hace esto. $a=mysql_query("CONSULTA"); $b = mysql_fetch_array($a); //es lo mismo hacer esto? ...
  #1 (permalink)  
Antiguo 27/06/2011, 23:21
 
Fecha de Ingreso: abril-2010
Mensajes: 159
Antigüedad: 14 años, 7 meses
Puntos: 11
Todas estas consultas son lo mismo?

Hola bueno solo tengo una duda.
ejemplo en una consulta mysql lo normal se hace esto.
$a=mysql_query("CONSULTA");
$b = mysql_fetch_array($a);

//es lo mismo hacer esto?
$a=mysql_fetch_array(mysql_query("CONSULTA"));
o
$a=mysql_num_rows(mysql_query("CONSULTA"));

aclaren mi duda, seria lo mismo o ambos cumplen roles diferentes
aparte de dar el mismo resultados.
cual seria recomendable para ahorrar un poco de lineas.
muchas gracias.
  #2 (permalink)  
Antiguo 27/06/2011, 23:35
Avatar de Sourcegeek
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: $mex['B.C.'];
Mensajes: 1.816
Antigüedad: 15 años, 6 meses
Puntos: 322
Respuesta: Todas estas consultas son lo mismo?

Mi amigo estás muy confundido. Te invito a leer esto:
http://php.net/mysql_fetch_array
http://php.net/mysql_num_rows

Son funciones totalmente diferentes
__________________
Buscas desarrollador web? Sourcegeek. Diseño web, Maquetación y Programación
¡Escribe bien! Esto es un foro, no un Facebook para que escribas con los pies
  #3 (permalink)  
Antiguo 28/06/2011, 07:29
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: Todas estas consultas son lo mismo?

mysql_fetch_array te convierte una fila en un array. Pero de la manera en que lo pusistes solo obtendras una fila. Si quisieras tener todas las filas, usarías un bucle while o similar.

mysql_fetch_array(mysql_query("CONSULTA")) me parece muy mala idea. Ignoro si funcione, pero te deja un codigo muy sucio. Además, las consultas no siempre son cortitas. A veces ocupan muchas muchas lineas. De cualquier manera, mysql_fetch_array va a retornar una sola linea, como te dije. Que tal si la consulta tuviera 100 lineas para mostrar?
  #4 (permalink)  
Antiguo 28/06/2011, 11:34
 
Fecha de Ingreso: abril-2010
Mensajes: 159
Antigüedad: 14 años, 7 meses
Puntos: 11
Respuesta: Todas estas consultas son lo mismo?

claro mayid tengo entendido que me devuelve una sola fila.
y con while recorreria todas las filas.

pero el metodo:
Cita:
$a=mysql_fetch_array(mysql_query("CONSULTA"));
seria lo mismo que:
Cita:
$a=mysql_query("CONSULTA");
$b = mysql_fetch_array($a);
es quiero saber si es lo mismo , o me produciria errores en el futuro talvez por el link indentificador de conexión.
  #5 (permalink)  
Antiguo 28/06/2011, 12:55
Avatar de mayid
Colaborador
 
Fecha de Ingreso: marzo-2009
Ubicación: BsAs
Mensajes: 4.014
Antigüedad: 15 años, 7 meses
Puntos: 101
Respuesta: Todas estas consultas son lo mismo?

Si te gusta así, probalo. Si anda, anda. Lo que decis del link de conexión es solo un parametro más en la función. Si no esta, se toma la ultima conección abierta.
  #6 (permalink)  
Antiguo 28/06/2011, 12:59
Avatar de stramin  
Fecha de Ingreso: marzo-2008
Ubicación: Cubil felino
Mensajes: 1.652
Antigüedad: 16 años, 8 meses
Puntos: 336
Respuesta: Todas estas consultas son lo mismo?

$a=mysql_num_rows(mysql_query("CONSULTA"));

es una buena forma de obtener el numero de filas devueltas, es exactamente lo mismo en ese caso.

en los otros casos mysql_fetch_array o mysql_fetch_row no es lo mismo.
__________________
El objetivo de este foro es orientar al usuario como un favor y no como una obligación.

Yo soy de los que dan puntos por aporte :D

Etiquetas: todas
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 20:21.