所有fetch行的按钮函数

axzmvihb  于 2021-06-21  发布在  Mysql
关注(0)|答案(1)|浏览(279)

我正在为我的大学做一个项目。我创建了一个用户可以发送好友请求的页面。在这里,我从另一个表中获取数据,并为每一行数据设置按钮。
我的问题是,当一个按钮点击另一行按钮时也被改为好友请求。我需要一个解决办法。
如何使一个add friend请求按钮等于一个行id,以及如何避免在单击某一行时影响其他按钮。
我的代码包含在下面。我希望你们能帮我。提前谢谢。

<?php
session_start();
$_SESSION['myid'];

$mysqli=new MySQLi('127.0.0.1','root','','learning_malaysia');
$sql = "SELECT * FROM tutor_register INNER JOIN tutorskill ON tutor_register.register_ID = tutorskill.register_ID ORDER BY 
tutor_register.register_ID='".$_SESSION['myid']."'desc";
$result= mysqli_query($mysqli,$sql);

if(mysqli_num_rows($result)>0)
{

    while($row = mysqli_fetch_array($result))
{      

         $register_ID=$row["register_ID"];
            $username = $row['username'];
            $profile = $row['profile'];
            $email = $row['email'];
            $address=$row['address'];
            $gender=$row['gender'];
             $main_subject=$row["main_subject"];
             $subject_add=$row["subject_add"];
            $rate_main=$row["rate_main"];
            $rate_add=$row["rate_add"];
            $qualification=$row["qualification"];
            ?>
            <table><form method="post">
            <tr class="border_bottom">
            <td height="230"><img src='<?php echo $profile;?>'width="200" height="200"/>&nbsp;</td><td><td></td></td>
 <?php 
         if($register_ID == $_SESSION['myid']){
                ?>
                <td><label>Your Profile</label></td>
                <?php
            } else {
                ?> 
                 <form method="post">
                 <td><button class='friendBtn unfriend'  name="" data-type="unfriend">Unfriend</button>
                 <input type="hidden" name="id"  value="<?php echo $row['register_ID'];?>" />  
                 <input type="submit" name="addfriend" data-type='addfriend' id="addfriend" value="<?php 
                     if($_SESSION['status'] == 'yes'){ 
                     echo 'Request Sent';
                     }
                     else { 
                     echo 'Addfriend';}
                     ?>" data-uid=<?php echo $row['register_ID'];?>/></td> </form>     
<?php
            }
}
?>
 </tr>
</div>
</table>
</form>
<?php
if(isset($_POST['id']) ) {
$user_id = $_SESSION['myid'];
$friend_id = $_POST['id'];
$sql="INSERT INTO friends(user_id,status,friend_id)" ."VALUES('$user_id','yes','$friend_id') ";

            if($mysqli->query($sql)=== true) {
                          $_SESSION['status']="yes";
                          $_SESSION['id']=$row['id'];
            } else {}
                              }
                }

?> 
</body>
</html>
kkbh8khc

kkbh8khc1#

您需要替换代码中的以下块:

<input type="submit" name="addfriend" data-type='addfriend' id="addfriend" value="<?php 
         if($_SESSION['status'] == 'yes'){ 
         echo 'Request Sent';
         }
         else { 
         echo 'Addfriend';}
         ?>" data-uid=<?php echo $row['register_ID'];?>/>

和下面提到的一样。这会解决你的问题。

<input type="submit" name="addfriend" data-type='addfriend' id="addfriend" value="<?php 
         if($_SESSION['status'] == 'yes' && $row['register_ID']==$_SESSION['id']){ 
         echo 'Request Sent';
         }
         else { 
         echo 'Addfriend';}
         ?>" data-uid=<?php echo $row['register_ID'];?>/>

相关问题