Ho il seguente script da me creato
Il tutto funziona correttamente e non mi da alcun problema tranne nel caso in cui vengo a ricevere i pensieri di due amici diversi; In quel caso essi vengono stampati in ordine di id di utente che lo ha scritto e non in ordine secondo orario di scrittura. Non riesco a capire dove ho sbaglio!! Nonostante lo abbia fatto vedere a più persone esperte di Mysql e Sql non sono riuscite a capire il perchè di questo malfunzionamento dato che se si eseguono le query sulla workbench di mysql essi funzionano perfettamente! Aiutatemi vi prego.
PHP:
//cerco il mio username nel database
$ricercaiduser = "SELECT id FROM users WHERE username='".$username."'";
$residuser = @mysql_query($ricercaiduser);
//prendo l'id del mio username
$row = mysql_fetch_array($residuser, MYSQL_ASSOC);
$res_id_final = $row["id"];
//ora cerco gli amici che ho con un confronto di id
$qry_cerca_amici = "SELECT id_friend FROM friends WHERE id_username='".$res_id_final."'";
$resfriendsch = @mysql_query($qry_cerca_amici);
//ciclo while per ottenere tuti i risultati
while ($row2 = mysql_fetch_array($resfriendsch, MYSQL_ASSOC)) {
$res_friend_tot = $row2["id_friend"];
//query e ciclo while per prendere tutti i pensieri scritti dai miei amici
$qry_prendi_post = "SELECT * FROM pensieri WHERE username IN ('".$res_friend_tot."') ORDER BY orario DESC";
$risultato_finale = mysql_query($qry_prendi_post);
while ($row3 = mysql_fetch_array($risultato_finale)) {
$res_post = $row3["post"];
$res_orario = $row3["orario"];
//stampo pensiero e orario
print "$res_orario<br>";
print "$res_post<br><br>";