2011-10-20 9 views
0

私は今これをしばらくの間苦労しており、それを働かせるようには見えません。 members.php(私はすべての登録ユーザを表示しています)には、各ユーザの隣に "友人に追加"というリンクが印刷されています。友人のIDがデータベースに保存されていません

各メンバーのIDをうまく表示できるように管理しましたが(IDを取得します)、リンクをクリックするとfriends.phpに誘導されます。わかりません友達のIDを取得する方法friends.phpファイルをクリックしました。どうぞご覧ください!

members.php

<?php 
     include 'connect.php'; 
     include 'header.php'; 

     if(isset($_SESSION['signed_in']) == false || isset($_SESSION['user_level']) != 1) 
      { 
       //the user is not an admin 
       echo '<br/>'; 
       echo 'Sorry! You have to be <a href="/signin.php"><b>logged in</b></a> to view all the <a href="signup_2.php" title="Become a registered user!"><b>registered</b></a> members.'; 
       echo '<br/><br/>'; 
      } 
      else 
      { 
       echo '<h2>Registered users:</h2>'; 

       $sql = "SELECT * FROM users ORDER BY user_name ASC"; 
       $result = mysql_query($sql); 

       $num=mysql_numrows($result); 

       $i=0; 
       while ($i < $num) 
       { 
        //$name = mysql_result($result,$i,"user_name"); 
        //$id = mysql_result($result,$i,"user_id"); 
        //$picture = mysql_result($result,$i,"pic_location"); 

        //?friend_id="'. $id .' 
        while($user = mysql_fetch_array($result)){ 
         echo $user['user_name'].'<br/><br/><a href="friends.php?user='.$user['user_id'].'">ADD TO FRIENDS</a><br/>'; 
         echo $user['user_id']; 
         echo '<br/><br/>'; 
        } 

        $i++; 
       } 

       /////////////////////////////// 
       /// adding users as friends /// 
       /////////////////////////////// 

       //while($user = mysql_fetch_array($result)) 
       //echo $user['user_name'].' 
        //<a href="addfriend.php?user='.$user['id'].'">ADD TO FRIENDS</a><br/>'; 


       //NOW I WANT TO MAKE A SPECIFIC "ADD AS FRIEND" LINK NEXT TO EACH USER 


      } 
      include 'footer.php'; 
?> 

私はこれがそう見てください取得するかどうかはわかりません言ったように!ありがとう!

J

friends.php

<?php 
    include "connect.php"; 
    include "header.php"; 

    if(isset($_SESSION['signed_in']) == false || isset($_SESSION['user_level']) != 1) 
    { 
     //the user is not an admin 
    echo '<br/>'; 
    echo 'Sorry! You have to be <a href="/signin.php"><b>logged in</b></a> if you want to add the person as a friend!'; 
    echo '<br/><br/>'; 
    } 
    else 
    { 
     $sql = "SELECT * FROM users"; 
     $result = mysql_query($sql); 

       //friend_id is the ID of the friend that is clicked on... 
       //HOW DO I GET THAT ID THAT IS CLICKED ON IN THE WHILE "loop" in members.php? 

       $friends = ("INSERT INTO friends SET user_id='" . $_SESSION['user_id'] . "', friend_id='".$id."', status='0'"); 
       $result_friends = mysql_query($friends); 


       if(!$friends) 
       { 
        //When you can't add this person as a friend this error will show! 
        echo 'You cannot add this user at this time. Please try again later!'; 
       } 
       else 
       { 
        //When the friend is now added to the system! 
        echo 'Great! Now the user needs to approve before you can be friends!'; 
       } 
    } 
?> 

答えて

1
あなたfriends.php用途に

$_GET['user_id'] 

代わりに$ IDを、$ idがIDの値を取得するには、定義されていませんあなたが$ _GET変数を使って呼び出すクエリ文字列から、

$ _GET ['name_of_query_string_value']

+3

'$ _SESSION ['user_id']'は、そのページを訪れたユーザーのIDを保持していて、別の場所に設定されていると思います。 '$ _GET ['user']'は、このユーザが追加したい友達のIDを保持しています。 – AJJ

+0

よっ!私は良く理解していますが、今は未定義インデックス:C:\ xampp \ htdocs \ friends.phpのuser_idが20行目です。どうすればその特定のuser_idを宣言できますか? –

+0

@AJweb:あなたがスポットです!しかし、私はそれが働くように見えることはできません! : –

関連する問題