PHP - Ordenar consultas de un WHILE

 
Vista:
Imágen de perfil de jams

Ordenar consultas de un WHILE

Publicado por jams (16 intervenciones) el 13/04/2015 20:42:07
Hola. Me pueden ayudar dandome un codigo o diciendome como ordenar las consultas de un while.

Estoy haciendo un sistema de mensajes tipo Facebook que me muestra los mensaje que he enviado a todos los usuarios

Lo que hice fue que la base de datos busque los usuarios de la pagina, el while los analiza cada uno y en cada uno de esos, dentro verifica si hay mensajes con ese usuario, de ser asi, hice q me muestre solo 1 para que sea que el usuario de click y hay vea todos.

El problemas es que, me los ordena por orden de usuario y no por hora de mensaje, ayudenme porfa
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alberto
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ordenar consultas de un WHILE

Publicado por Alberto (351 intervenciones) el 13/04/2015 21:14:31
Hola...

Posiblemente te muestra ese orden debido a la consulta que estas realizando, si quieres que te lo ordene por hora de mensaje en tu consulta tienes agregar la propiedad ORDER BY, quedando de la siguiente manera...

SELECT * FROM tabla1 ORDER BY fecha_mensaje;

De esa manera los resultados que recibas se ordenaran mediante la fecha del mensaje, solo es cuestión de modificar la consulta ya que el proceso en que recuperas los datos lo veo aceptable.

Cualquier duda y/o inconveniente, aquí estamos. Suerte!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de jams

Ordenar consultas de un WHILE

Publicado por jams (16 intervenciones) el 13/04/2015 23:44:45
eso ya se, pero no puedo hacer eso porq solo estoy mostrando 1 mensaje(el ultimo) que he enviado a cada usuario.

O no hay una forma de hacer eso sin tanto problema??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de xve
Val: 3.943
Oro
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ordenar consultas de un WHILE

Publicado por xve (6935 intervenciones) el 14/04/2015 07:56:03
Hola Jams lo que te ha comentado Alberto es lo correcto... ordénalo por el campo que quieras... aunque luego solo devuelvas uno...

No se entiendo muy bien a que te refieres.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Alberto
Val: 478
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Ordenar consultas de un WHILE

Publicado por Alberto (351 intervenciones) el 14/04/2015 17:10:26
Podrías ser mas explicativo con tu caso, por favor, así como dijo el compañero xve, no entendemos bien a que te refieres por lo que hace mas complicado el ayudarte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de jams

Ordenar consultas de un WHILE

Publicado por jams (16 intervenciones) el 15/04/2015 00:31:42
Pues bien, este es una parte mis dos tablas que tengo en la base de datos
ayudanme

Y lo que hago es esto:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
if (!isset($_SESSION)) {
  session_start();
}
 
include('Connections/datos.php');
$ver_todos_mensajes = mysql_connect($hostname_fc, $username_fc, $password_fc);
$ver_todos_mensajes_2 = mysql_select_db($database_fc,$ver_todos_mensajes);
$ver_todos_mensajes_query = mysql_query("select * from usuarios where 1");
while($ver_mensajes_user_dato = mysql_fetch_array($ver_todos_mensajes_query)){
	$ver_el_mensaje_query = mysql_query("select * from mensajes where (user1='".$ver_mensajes_user_dato['idusuario']."' AND user2='".$_SESSION['MM_iduser']."') or (user2='".$ver_mensajes_user_dato['idusuario']."' AND user1='".$_SESSION['MM_iduser']."') order by idmensaje desc");
	if($ver_el_mensaje_dato = mysql_fetch_array($ver_el_mensaje_query)){
	echo "<br> mensaje del usuario: ".$ver_mensajes_user_dato['idusuario']."<br>";
	echo "<br>";
	echo $ver_el_mensaje_dato['mensaje'];
	}
}

Lo uqe hago con este codigo esque me verifique si he enviado mensaje a los usuarios de ser asi me muestra solo 1, que esos es lo que quiero, lo malo esque me lo muestra en orden de usuario, y yo quiero que me muestre en hora de mensaje.

Por si acaso, no es la misma tabla asi que no puedo poner el codigo "By arder fecha desc" porq no resulta de nada, ya que el principal seria el de usuario, por eso quiero que me ayuden.

O si tienen una idea de como puedo hacerlo mejor, porfavor diganme

Aqui saque una imgen de internet de como quiero hacer (parecido a facebook
facebookmessages2
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar