2014-01-19 2 views
0

안녕하세요, 제가 여기에서 약간의 문제를 겪고 있습니다. 아래에서 내 코드를 사용하여 같은 페이지에서 모든 사용자의 친구 요청을 표시하지만 일어나는 일은 페이지가 한 번에 하나의 요청 만 표시하면 페이지를 새로 고치거나 새로 고침하여 남아있는 요청이 하나씩 표시되도록해야합니다. 페이지 아래에 나열된 모든 내용이 도움이 될 것입니다. 고마워요한 페이지에서 하나 이상의 mysql 결과 얻기

<?php 
include ('views/header.php'); 
require_once ('config/config.php'); 
include ('config/connection.php'); 


{ 

    global $user_name,$page_owner,$username; 

    $user_name = trim(strip_tags($_SESSION["user_name"])); //This is the user who logged into the system or logged in session 

    $page_owner = trim(strip_tags($_SESSION["user_name"])); // This is the owner of the page viewed 
      $username = mysql_query("select * from request where friend ='".$user_name."'"); 
    $user_id = mysql_query("select user_id from users where user_id = 'user_id'"); 


    //This is the page that checks for Friend Request 


$check_request = mysql_query("select * from request where friend = '".$user_name."'"); //First Request receive, first to respond to 


        if(intval(mysql_num_rows($check_request))==0); //If there is a friend request for the logged in user then show it to the user otherwise do nothing 




          $get_request_details = mysql_fetch_array($check_request); 


          //Check friend who sent the request full info from the users table 

          $check_request_info = mysql_query("select * from `users` where `user_name` = '".mysql_real_escape_string($get_request_details["username"])."'"); 

          //Get friend who sent the request full info from the users table 

          $get_request_info = mysql_fetch_array($check_request_info); 


          //Check logged in user full info from the users table 

          $check_logged_in_user_info = mysql_query("select * from `users` where `user_name` = '".$_SESSION['user_name']."'"); 

          //Get logged in user full info from the users table 

          $get_logged_in_user_info = mysql_fetch_array($check_logged_in_user_info); 

?> 


new requests(<?php echo intval(mysql_num_rows($check_request)); ?>) 







          <div>Hello <?php echo strip_tags($get_logged_in_user_info["user_name"]);?><div> 

          <div style="font-family:Verdana, Geneva, sans-serif; font-size:11px; line-height:18px;" align="left">Here are your friend requests.</div> 

          <a href="userpro.php?id=<?php echo $get_request_info["user_id"]; ?>"><font style="color:blue;font-family:Verdana, Geneva, sans-serif; font-size:14px;"><?php echo strip_tags($get_request_info["user_name"]); ?> wants to be friends</font></a><div> 


          <div> 



<div> 

<a href="af.php?username=<?php echo $get_request_info["user_name"]; 
?>"class="square">Accept</a> 


          <a href="df.php?username=<?php echo $get_request_info["user_name"]; ?>"class="square">Decline</a> 


<?php 




        } 













    { 

      //Unknown page realized 

    } 



?> 
+3

귀하의 서식을 읽을 절대적으로 끔찍한 당신의 SQL에 LIMIT를 사용하는 것이 좋습니다. 고칠 수 있니? – Mave

+0

루프에서 mysql_fetch_array()를 호출해야합니다. –

+0

1. JOIN을 참조하십시오. !!! – Strawberry

답변

0

하나만 인쇄하기 때문입니다. 모든 친구 요청을 포함하는 배열을 반복하지 않습니다. 첫 번째 배열을 배열에 에코합니다. 그 사람을 거부하거나 수락하면 다음 사람이 표시됩니다.

한 번에 하나의 행의 결과를 가져온다) Populate PHP Array from While Loop

0

함수로 MYSQL_ASSOC (참조. 당신과 같이 while 루프에서이 포장하려는 :

while ($get_request_details = mysql_fetch_array($check_request)) 
{ 
    // do repetitive processing 
} 
0
$user_name = mysql_real_escape_string($user_name); 
$query ="SELECT user_id FROM users JOIN request ON users.user_id = request.user_id WHERE users.user_id = {$user_name}"; 
$request = mysql_query($query); 
while ($row = mysql_fetch_assoc($request)){ 
    $results[] = $row; 
} 
//debug 
echo '<pre>'; 
print_r($results); 

을 그리고

관련 문제