开发者

Organize array in PHP from mysql

Hi i have a social networking website.

what i want it to do is pull out my friends status updates.

basically what it does is i have a mysql query that pulls out all of my friends and in that while loop there is another mysql query开发者_StackOverflow that pulls out the status's from my friends.

i want it to be in order of date but since its one while loop in another what it does is pull out all status's from friend 1 then 2 then 3 and not in order by date. i even tried ORDER BY DATE but that just ordered it by date within the friend.. my thought is that i could putt it all in an array and friends is one thing and the values is the stats. then just sort by values would this work and how could i do it.

the friend and stats are in two differants tables

THANKS SO MUCH

CODE:

$friendssql = mysql_query("SELECT * FROM friends WHERE sender='$id'"); while($row = mysql_fetch_object($friendssql)) { $friendid = $row-> accepter;

    $frsql = mysql_query("SELECT * FROM myMembers WHERE id='$friendid'");
    while($rowa = mysql_fetch_object($frsql)) {
        $ufirstname = $rowa-> firstname;
        $ulastname = $rowa-> lastname;
    }


$blabsql = mysql_query("SELECT * FROM blabbing WHERE mem_id='$friendid' ORDER BY blab_date DESC");
while($rowb = mysql_fetch_object($blabsql)) {
    $blab = $rowb-> the_blab;
    $blabd =$rowb-> blab_date;

    $ucheck_pic = "members/$friendid/image01.jpg";
    $udefault_pic = "members/0/image01.jpg";
    if (file_exists($ucheck_pic)) {
    $blabber_pic = "<img src=\"$ucheck_pic\" width=\"50px\" border=\"0\" />"; // forces picture to be 100px wide and no more
    } else {
    $blabber_pic = "<img src=\"$udefault_pic\" width=\"40px\" border=\"0\" />"; // forces default picture to be 100px wide and no more
    }


Once you've put your data into the array, you could take a look at some of the various array sorting functions in PHP: http://php.net/manual/en/array.sorting.php


why not do it all in one query? this is psuedo sql, so you'll have to modify with your real tables and relationships.

select f.name,s.statustext
from friends f 
     inner join status s
         on s.friend_id = f.id
     inner join myfriends mf
         on mf.friend_id = f.id
where mf.myid = 'myid'
order by f.name, s.datestamp

or something similar.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜