2

i am creating a friend request page that it need to take the friends request as an array than separate each username by a comma.

i do not know what to use the implode or the explode i did use both but neither one give me the result as i want

when i press the accpet button i get this error

Warning: implode(): Invalid arguments passed in C:\wamp\www\Unnamed Site 2\resources\friend_requests.php on line 59

can anyone help me ???

friend_request.php

<?php
session_start();

if($sessionlogin = isset($_SESSION['login']))
 {

   $login = ($_SESSION['login']);
   $userid = ($_SESSION['user_id']);
   $login_user = ($_SESSION['username']);
   $fname = ($_SESSION['first_name']);
   $lname = ($_SESSION['last_name']);
   $sessionaddres =($_SESSION['address']);



 // require_once('header.php'); 
 require_once('for members/scripts/connect.php');
  //find friend request
    $findrequests = mysql_query("SELECT * FROM friend_requests WHERE user_from = '$login_user'") or die(mysql_error());
$numrows = mysql_num_rows($findrequests);
   if($numrows == 0)
  {

      echo "YOU HAVE no friend Requests at this time";
      $user_from = "";

  }
    else
  {
       while($get_row =  mysql_fetch_assoc($findrequests))
     {
         $id = $get_row['id'];
         $user_to = $get_row['user_from'];
         $user_from = $get_row['user_to'];

            echo '' . $user_from .   '   wants to be  friend' . '<br />';


            //var_dump($user_from);
            //var_dump($user_to);
            //echo "your user_to is '$user_to'";
            //echo "your user_from is '$user_from'";




?>



<?php

 if(isset($_POST['acceptrequest'.$user_from]))
 {
     //select the friend array  row  from the logged in user
     $get_friend_check = mysql_query("SELECT friend_array FROM user WHERE user_name = '$login_user'") or die(mysql_error());
     $get_friend_row = mysql_fetch_assoc($get_friend_check);
     $friend_array = $get_friend_row['friend_array'];
     $friendArray_explode = implode(",", $friend_array);
     $friend_array_count = count($friendArray_explode);


     //select the friend array  row from the user  who sent the friend request 
     $get_friend_check_friend = mysql_query("SELECT friend_array FROM user WHERE user_name = '$user_from'") or die(mysql_error());
     $get_friend_row_friend = mysql_fetch_assoc($get_friend_check_friend);
     $friend_array_friend = $get_friend_row_friend['friend_array'];
     $friendArray_explode_friend = implode(",", $friend_array_friend);
     $friend_array_count_friend = count($friendArray_explode_friend);

     if($friend_array == "")
     {
       $friendArray_count = count(NULL);    

     }
        //var_dump($friendArray_count);

    if($friend_array_friend == "")
     {
       $friendArray_count_friend = count(NULL);  
     }

     if (@$friendArray_count == NULL)
     {
         $add_friend_query = mysql_query("UPDATE user SET friend_array = CONCAT(friend_array, '$user_from') WHERE user_name = '$login_user'");
     }

     if(@$friendArray_count_friend == NULL)
     {
         $add_friend_query = mysql_query("UPDATE user SET friend_array = CONCAT(friend_array, '$user_to') WHERE user_name = '$user_from'");
     }
     /*
     if(@$friendArray_count >= 1)
     {
         $add_friend_query = mysql_query("UPDATE user SET friend_array = CONCAT(friend_array, ',$user_from') WHERE user_name = '$login_user'");
     }
     /*
         if(@$friendArray_count_friend >= 1)
         {
         $add_friend_query = mysql_query("UPDATE user SET friend_array = CONCAT(friend_array, ',$user_to') WHERE user_name = '$user_from'");
     }

      */
     // for delete request  

     $delete_request = mysql_query("DELETE FROM friend_requests WHERE user_to = '$user_to' && user_from = '$user_from'") or die(mysql_error());

     echo "YOU are now friends!!";
    //header("Location: friend_requests.php");

 }


 if(isset($_POST['ignorerequest'.$user_from]))
 {
      $ignore_request = mysql_query("DELETE FROM friend_requests WHERE user_to = '$user_to' && user_from = '$user_from'")      or die(mysql_error());

     echo "Request ignored !!";
     header("Location: friend_requests.php");

 }

?><br />
<br />
<br />
<br />
<br />

<form action="friend_requests.php" method="post">
               <input type="submit" name="acceptrequest<?php echo $user_from; ?>" value="Accept">
               <input type="submit" name="ignorerequest<?php echo $user_from; ?>" value="Ignor">
</form>

<?php
   }
  }
 }

?>
2

1 Answer 1

0

try this

      $get_friend_check = mysql_query("SELECT friend_array FROM user WHERE user_name = '$login_user'") or die(mysql_error());

 $your_array = array();
 while ($get_friend_row = mysql_fetch_array($get_friend_check)) {
 $your_array[] = $get_friend_row['friend_array'];
 }

 $friendArray_explode = implode(",", $your_array);
 echo $friendArray_explode;
  • you could also use implode in mysql directly

like that

$get_friend_check = mysql_query("SELECT group_concat(friend_array SEPARATOR ',')
                                 FROM user WHERE user_name = '$login_user'") 
or die(mysql_error());
Sign up to request clarification or add additional context in comments.

2 Comments

yes i did this code but it did not work still rhe value stored in the database like a one word not separated with a comma
i tried the code and it display test2fadysalimYOU are now friends!!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.