如何在PHP上设置一个唯一标识一个属性


how put a unique identification an attribute on PHP

这是我的第三天,我放弃了搜索和尝试。我想我已经需要这个团队的帮助了。无论如何,这段代码将打印所有不是我朋友的个人资料。我想放一个id,这样当我点击添加朋友时,它会给我一个该用户的id,我可以操作它。谢谢大家:)

    <?php
      require "php/dbc.php";
      $temp = mysql_query("SELECT * FROM friends WHERE username = '$username'");
      $friends = mysql_fetch_array($temp);
      $query = mysql_query("SELECT * FROM user");
      while($row = mysql_fetch_array($query)){
      if($row['username'] != $username && in_array($row['username'],$friends)===false){
      echo '<div class="container">';
      echo '<div class="row">';
      echo '<div class="col-xs-12 col-sm-6 col-md-6">';
      echo '<div class="well well-sm">';
      echo '<div class="row">';
      echo '<div class="col-sm-6 col-md-4">';
      echo '<img src="profile/'.$row['profpicxtn'].'" alt="" " />';
      echo '</div>';
      echo '<div class="col-sm-6 col-md-8">';
      echo '<h4>';
      echo ucfirst($row['fname'])." ".ucfirst($row['lname']).'</h4>';
      echo '<p>';
      echo '<i class="glyphicon glyphicon-envelope"></i>'.$row['email'];
      echo '<br />';
      echo ' <i class="glyphicon glyphicon-gift"></i>bday</p>';
      echo '<input type="submit" name="name" method="post" c>+1 Add Friend</button>';
      echo '</div>'; 
      echo '</div>';
      echo '</div>';
      echo '</div>';
      echo '</div>';
      echo '</div>';
?>

在表单标记中插入添加好友按钮,为了设置要与该表单一起发送的id,您可以使用隐藏输入并在隐藏输入中设置id的值例如,如果你的id值等于$row['id'],你可以这样做

<form method="post" action="">
 <input type="hidden" value=<?php echo $row['id'] ; ?> />
 <input type="submit" name="submit" value="+1 Add Friend"/>
</form>

请记住,您可以使用?><?phpphp脚本中跳转和跳出,这会使您的代码更可读,并防止出现奇怪的错误

尝试此修订版。在您的示例代码中有一些可疑的东西,如果您的sql语句实际返回了一些东西(也就是说,您正在向它提供正确的数据),这可能会有所帮助:

<?php
require("php/dbc.php");
$temp       =   mysql_query("SELECT * FROM friends WHERE username = '$username'");
$friends    =   mysql_fetch_array($temp);
$query      =   mysql_query("SELECT * FROM user");
while($row = mysql_fetch_array($query)){
        if($row['username'] !== $username && in_array($row['username'],$friends) == false){ ?>
        <div class="container">
            <div class="row">
                <div class="col-xs-12 col-sm-6 col-md-6">
                    <div class="well well-sm">
                        <div class="row">
                            <div class="col-sm-6 col-md-4">
                            </div>
                        <div class="col-sm-6 col-md-8">
                        <h4>Name</h4>
                        <p><i class="glyphicon glyphicon-envelope"></i><?php echo $row['email']; ?>
                        <br />
                        <i class="glyphicon glyphicon-gift"></i>bday</p>
                        <!--
                        If you have a javascript to run the button, you can use it, otherwise use a form.
                        <button name="name" value="<?php echo $row['id'];?>" onclick="window.location='whatever.php?id=<?php echo $row['id'];?>'">+1 Add Friend</button>-->
                        <form id="user<?php echo $row['id'];?>" method="post">
                            <!-- Since you are doing a lookup on usernames, I presume username here but id (if available) should be used-->
                            <button name="name" value="<?php echo $row['username'];?>">+1 Add Friend</button>
                        </form>
                    </div> 
                </div>
            </div>
        </div>
    </div><?php }
} ?>