harkly
11-02-2012, 08:13 PM
Have this code that pulls the info and puts in a list, it is a very simple list, now I want to expand and add info to it but when I do the last code is what get implemented.
What do I use to make it all work?
This is the very simple code:
$sql = "SELECT * FROM nudges WHERE sender='$clientID' AND s_status IN (1,0) AND accepted=1
UNION
SELECT * FROM nudges WHERE receiver='$clientID'
ORDER BY posted DESC ";
$result=$mysqli->query($sql);
while($r = $result->fetch_assoc()) {
$sender=$r['sender'];
$receiver=$r['receiver'];
if($receiver == $clientID) {
echo "<br>Received $receiver - $sender";
}
if($sender == $clientID){
echo "<br>Sent $sender - $receiver";
}
What I get is:
Sent test - harkly
Received test - fassbender
Received test - theRory
So now I add more details and it will only do the last if statement, I sort of get why but what I can't figure out is what I need to do to fix it
More detailed code:
$sql = "SELECT * FROM nudges WHERE sender='$clientID' AND s_status IN (1,0) AND accepted=1
UNION
SELECT * FROM nudges WHERE receiver='$clientID'
ORDER BY posted DESC ";
$result=$mysqli->query($sql);
while($r = $result->fetch_assoc()) {
$sender=$r['sender'];
$receiver=$r['receiver'];
if($receiver == $clientID) {
$sql = $mysqli->query("SELECT * FROM nudges WHERE receiver='$clientID' ORDER BY posted DESC");
while($r = $sql->fetch_assoc()) {
$posted = date(" F j",$r[posted]);
$id=$r['id'];
$sender=$r['sender'];
$receiver=$r['receiver'];
$r_status=$r['r_status'];
$s_status=$r['s_status'];
$accepted=$r['accepted'];
$result = $mysqli->query("SELECT city, state, birth_date,
CURDATE(),
(YEAR(CURDATE())-YEAR(birth_date)) - (RIGHT(CURDATE(),5)<RIGHT(birth_date,5))
AS age FROM user WHERE userID = '$sender'");
while ($r=$result->fetch_assoc()) {
$city = $r['city'];
echo "<br>Received $receiver - $sender $city";
}
}
}
if($sender == $clientID){
$sql = $mysqli->query("SELECT * FROM nudges WHERE sender='$clientID' ORDER BY posted DESC");
while($r = $sql->fetch_assoc()) {
$posted = date(" F j",$r[posted]);
$id=$r['id'];
$sender=$r['sender'];
$receiver=$r['receiver'];
$result = $mysqli->query("SELECT city, state, birth_date,
CURDATE(),
(YEAR(CURDATE())-YEAR(birth_date)) - (RIGHT(CURDATE(),5)<RIGHT(birth_date,5))
AS age FROM user WHERE userID = '$receiver'");
while ($r=$result->fetch_assoc()) {
$age = $r['age'];
$city = $r['city'];
echo "<br>Sent $sender - $receiver $city";
}
}
}
} // END while
What I get from this is:
Sent test - harkly Winston Salem
Sent test - charlieMain Winston Salem
How can I pull info for both if statements??
What do I use to make it all work?
This is the very simple code:
$sql = "SELECT * FROM nudges WHERE sender='$clientID' AND s_status IN (1,0) AND accepted=1
UNION
SELECT * FROM nudges WHERE receiver='$clientID'
ORDER BY posted DESC ";
$result=$mysqli->query($sql);
while($r = $result->fetch_assoc()) {
$sender=$r['sender'];
$receiver=$r['receiver'];
if($receiver == $clientID) {
echo "<br>Received $receiver - $sender";
}
if($sender == $clientID){
echo "<br>Sent $sender - $receiver";
}
What I get is:
Sent test - harkly
Received test - fassbender
Received test - theRory
So now I add more details and it will only do the last if statement, I sort of get why but what I can't figure out is what I need to do to fix it
More detailed code:
$sql = "SELECT * FROM nudges WHERE sender='$clientID' AND s_status IN (1,0) AND accepted=1
UNION
SELECT * FROM nudges WHERE receiver='$clientID'
ORDER BY posted DESC ";
$result=$mysqli->query($sql);
while($r = $result->fetch_assoc()) {
$sender=$r['sender'];
$receiver=$r['receiver'];
if($receiver == $clientID) {
$sql = $mysqli->query("SELECT * FROM nudges WHERE receiver='$clientID' ORDER BY posted DESC");
while($r = $sql->fetch_assoc()) {
$posted = date(" F j",$r[posted]);
$id=$r['id'];
$sender=$r['sender'];
$receiver=$r['receiver'];
$r_status=$r['r_status'];
$s_status=$r['s_status'];
$accepted=$r['accepted'];
$result = $mysqli->query("SELECT city, state, birth_date,
CURDATE(),
(YEAR(CURDATE())-YEAR(birth_date)) - (RIGHT(CURDATE(),5)<RIGHT(birth_date,5))
AS age FROM user WHERE userID = '$sender'");
while ($r=$result->fetch_assoc()) {
$city = $r['city'];
echo "<br>Received $receiver - $sender $city";
}
}
}
if($sender == $clientID){
$sql = $mysqli->query("SELECT * FROM nudges WHERE sender='$clientID' ORDER BY posted DESC");
while($r = $sql->fetch_assoc()) {
$posted = date(" F j",$r[posted]);
$id=$r['id'];
$sender=$r['sender'];
$receiver=$r['receiver'];
$result = $mysqli->query("SELECT city, state, birth_date,
CURDATE(),
(YEAR(CURDATE())-YEAR(birth_date)) - (RIGHT(CURDATE(),5)<RIGHT(birth_date,5))
AS age FROM user WHERE userID = '$receiver'");
while ($r=$result->fetch_assoc()) {
$age = $r['age'];
$city = $r['city'];
echo "<br>Sent $sender - $receiver $city";
}
}
}
} // END while
What I get from this is:
Sent test - harkly Winston Salem
Sent test - charlieMain Winston Salem
How can I pull info for both if statements??