PageRenderTime 49ms CodeModel.GetById 22ms RepoModel.GetById 0ms app.codeStats 1ms

/root/request_as_friend.php

https://gitlab.com/JLHasson/Wordflow
PHP | 190 lines | 102 code | 56 blank | 32 comment | 33 complexity | 3001e0537f84b279a132f6b74d25e49b MD5 | raw file
  1. <?php
  2. session_start();
  3. include_once "mysql_server/connect_to_mysql.php"; // <<---- Connect to database here
  4. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  5. //////////// PART 1 //////////////
  6. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  7. if ($_POST["request"] == "requestFriendship") {
  8. $mem1 = preg_replace('#[^0-9]#i', '', $_POST['mem1']);
  9. $mem2 = preg_replace('#[^0-9]#i', '', $_POST['mem2']);
  10. //
  11. if (!$mem1 || !$mem2) {
  12. echo 'Error: Missing data';
  13. exit();
  14. }
  15. //
  16. if ($mem1 == $mem2) {
  17. echo 'Error: You cannot add yourself as a friend';
  18. exit();
  19. }
  20. $sql_frnd_arry_mem1 = mysql_query("SELECT friend_array FROM myMembers WHERE id='$mem1' LIMIT 1");
  21. while($row=mysql_fetch_array($sql_frnd_arry_mem1)) { $frnd_arry_mem1 = $row["friend_array"]; }
  22. $frndArryMem1 = explode(",", $frnd_arry_mem1);
  23. if (in_array($mem2, $frndArryMem1)) { echo 'This member is already your Friend'; exit(); }
  24. $sql = mysql_query("SELECT id FROM friends_requests WHERE mem1='$mem1' AND mem2='$mem2' Limit 1");
  25. $numRows = mysql_num_rows($sql);
  26. if ($numRows > 0) {
  27. echo '<img src="images/error.png" width="20" height="20" alt="Error" /> You have a Friend request pending for this member. Please be patient.';
  28. exit();
  29. }
  30. $sql = mysql_query("SELECT id FROM friends_requests WHERE mem1='$mem2' AND mem2='$mem1' Limit 1");
  31. $numRows = mysql_num_rows($sql);
  32. if ($numRows > 0) {
  33. echo '<img src="images/error.png" width="20" height="20" alt="Error" /> This user has requested you as a Friend already! Check your Requests on your profile.';
  34. exit();
  35. }
  36. $sql = mysql_query("INSERT INTO friends_requests (mem1, mem2, timedate) VALUES('$mem1','$mem2',now())") or die (mysql_error("Friend Request Insertion Error"));
  37. //$sql = mysql_query("INSERT INTO pms (to, from, time, sub, msg) VALUES('$mem2','XXXXX',now(),'New Friend Request','You have a new Friend Request waiting for approval.<br /><br />Navigate to your profile and check your friend requests. <br /><br />Thank you.')") or die (mysql_error("Friend Request PM Insertion Error"));
  38. //$id = mysql_insert_id();
  39. echo '<img src="images/success.png" width="20" height="20" alt="Success" /> Friend request sent successfully. This member must approve the request.';
  40. exit();
  41. }
  42. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  43. //////////// PART 2 //////////////
  44. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  45. if ($_POST["request"] == "acceptFriend") {
  46. $reqID = preg_replace('#[^0-9]#i', '', $_POST['reqID']);
  47. $sql = "SELECT * FROM friends_requests WHERE id='$reqID' LIMIT 1";
  48. $query = mysql_query($sql) or die ("Sorry we had a mysql error!");
  49. $num_rows = mysql_num_rows($query);
  50. if ($num_rows < 1) {
  51. echo 'An error occured';
  52. exit();
  53. }
  54. while ($row = mysql_fetch_array($query)) {
  55. $mem1 = $row["mem1"];
  56. $mem2 = $row["mem2"];
  57. }
  58. $sql_frnd_arry_mem1 = mysql_query("SELECT friend_array FROM myMembers WHERE id='$mem1' LIMIT 1");
  59. $sql_frnd_arry_mem2 = mysql_query("SELECT friend_array FROM myMembers WHERE id='$mem2' LIMIT 1");
  60. while($row=mysql_fetch_array($sql_frnd_arry_mem1)) { $frnd_arry_mem1 = $row["friend_array"]; }
  61. while($row=mysql_fetch_array($sql_frnd_arry_mem2)) { $frnd_arry_mem2 = $row["friend_array"]; }
  62. $frndArryMem1 = explode(",", $frnd_arry_mem1);
  63. $frndArryMem2 = explode(",", $frnd_arry_mem2);
  64. if (in_array($mem2, $frndArryMem1)) { echo 'This member is already your Friend'; exit(); }
  65. if (in_array($mem1, $frndArryMem2)) { echo 'This member is already your Friend'; exit(); }
  66. if ($frnd_arry_mem1 != "") { $frnd_arry_mem1 = "$frnd_arry_mem1,$mem2"; } else { $frnd_arry_mem1 = "$mem2"; }
  67. if ($frnd_arry_mem2 != "") { $frnd_arry_mem2 = "$frnd_arry_mem2,$mem1"; } else { $frnd_arry_mem2 = "$mem1"; }
  68. $UpdateArrayMem1 = mysql_query("UPDATE myMembers SET friend_array='$frnd_arry_mem1' WHERE id='$mem1'") or die (mysql_error());
  69. $UpdateArrayMem2 = mysql_query("UPDATE myMembers SET friend_array='$frnd_arry_mem2' WHERE id='$mem2'") or die (mysql_error());
  70. $deleteThisPendingRequest = mysql_query("DELETE FROM friends_requests WHERE id='$reqID' LIMIT 1");
  71. echo "You are now friends with this member!";
  72. exit();
  73. }
  74. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  75. //////////// PART 3 //////////////
  76. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  77. if ($_POST["request"] == "denyFriend") {
  78. $reqID = preg_replace('#[^0-9]#i', '', $_POST['reqID']);
  79. $deleteThisPendingRequest = mysql_query("DELETE FROM friends_requests WHERE id='$reqID' LIMIT 1");
  80. echo "Request Denied";
  81. exit();
  82. }
  83. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  84. //////////// PART 4 //////////////
  85. ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
  86. if ($_POST["request"] == "removeFriendship") {
  87. $mem1 = preg_replace('#[^0-9]#i', '', $_POST['mem1']); // Person doing the friendship remove
  88. $mem2 = preg_replace('#[^0-9]#i', '', $_POST['mem2']); // Person being removed
  89. //
  90. if (!$mem1 || !$mem2) {
  91. echo 'Error: Missing data';
  92. exit();
  93. }
  94. //
  95. /*$decryptedID = base64_decode($_SESSION['id']);
  96. $id_array = explode("p3h9xfn8sq03hs2234", $decryptedID);
  97. $mem1SessID = $id_array[1];
  98. if ($mem1SessID != $mem1) {
  99. echo("Your session is not equal to the post of mem1");
  100. exit();
  101. }
  102. I don't understand why the session variable isn't working correctly
  103. */
  104. // Query mem1 and mem2 friend_array out of DB
  105. $sql_frnd_arry_mem1 = mysql_query("SELECT friend_array FROM myMembers WHERE id='$mem1' LIMIT 1");
  106. $sql_frnd_arry_mem2 = mysql_query("SELECT friend_array FROM myMembers WHERE id='$mem2' LIMIT 1");
  107. while($row=mysql_fetch_array($sql_frnd_arry_mem1)) { $frnd_arry_mem1 = $row["friend_array"]; }
  108. while($row=mysql_fetch_array($sql_frnd_arry_mem2)) { $frnd_arry_mem2 = $row["friend_array"]; }
  109. // Check to see they are in fact each other's friends
  110. $frndArryMem1 = explode(",", $frnd_arry_mem1);
  111. $frndArryMem2 = explode(",", $frnd_arry_mem2);
  112. if (!in_array($mem2, $frndArryMem1)) { echo 'This member is not in your list'; exit(); }
  113. if (!in_array($mem1, $frndArryMem2)) { echo 'This member is not in your list'; exit(); }
  114. // Here we remove them from each other's arrays using "unset" on the key where the value is found
  115. foreach ($frndArryMem1 as $key => $value) {
  116. if ($value == $mem2) {
  117. unset($frndArryMem1[$key]);
  118. }
  119. }
  120. foreach ($frndArryMem2 as $key => $value) {
  121. if ($value == $mem1) {
  122. unset($frndArryMem2[$key]);
  123. }
  124. }
  125. // Now implode the adjusted arrays to make them strings again before going into the database
  126. $newStringForMem1 = implode(",", $frndArryMem1);
  127. $newStringForMem2 = implode(",", $frndArryMem2);
  128. // And now update their database fields
  129. $sql = mysql_query("UPDATE myMembers SET friend_array='$newStringForMem1' WHERE id='$mem1'");
  130. $sql = mysql_query("UPDATE myMembers SET friend_array='$newStringForMem2' WHERE id='$mem2'");
  131. echo 'You are no longer friends with this member.';
  132. exit();
  133. }
  134. ?>