选择包含特定值的行


Select row containing specific value

我有一个Sql表,我需要通过members列搜索,以查看是否有任何值与以前获得的值相同(例如:76561198119598543),如果是,那么我想获得存储在同一行的name下的值…

下面的链接是一个示例,说明了表的外观以及成员列是如何设置的。http://nbdcommunity.com/staffimages/example.png

我不是一个太PhP的人,我已经尝试了几乎所有我能找到的…$gangsql = 'SELECT members, name, owner FROM 'gangs' WHERE owner LIKE "$playerid%"'; (playerid是我要比较的值)

看起来列成员中的值不是数字,而是字符串。如果是这样,您可以尝试:

SELECT name FROM gangs WHERE members LIKE '%76561198119598543%'

这将返回"members"列中包含您所检查的数字的所有行的"name"的值。

以下是我对你的问题的理解:
它就像一个搜索框。如果您想要查看的数据是匹配的,您显示它吗?

的例子:PHP文件

    <?php
    //Connection here
    if isset($_POST["member"]){
    $get_data = $_POST["member"];
    //Display matched Data
    $sql = mysql_query("SELECT * FROM table_name WHERE member = '$get_data' ");
    while($row = mysql_fetch_array($sql)){
    //Declare variables
    $this_name = $row["name"];
    //Display Variable
    echo 
    'The name you are looking for is this person; on this case it''s a number <u>'.$this_name.'</u>';
    }
    //END WHILE LOOP
    }else{
    //No match
     echo '
     <script>
     alert("Data has no match. Please try again");
     window.location= "php_page_name.php";
     </script>
         ';
     }
     ?>
这里的

HTML

<form method="post" action="">
Search Member:
<input type="text" name="member">
<input type="submit" value="Filter">
</form>

希望这对你有帮助。好运!

$lastValue = "76561198119598543";
$c = new mysqli($server, $user, $password) or die("cant connect");
if($res = $c->query("SELECT name FROM table WHERE members='$lastValue'")){
  if($res->num_rows > 0){
     $resAssoc = $res->fetch_assoc();
     $name = $resAssoc["name"];
  }
} else {
   die($c->error);
}
$c->close();