从Mysql/PHP获取具有名称或用户ID的用户信息
我能知道这里出了什么错吗? 我的数据库中有两个表。 就是这个 我已经写了代码作为搜索播放器的事情。我将在表单中输入用户名或userid,它将处理用户的信息 这是我的密码从Mysql/PHP获取具有名称或用户ID的用户信息,php,mysql,Php,Mysql,我能知道这里出了什么错吗? 我的数据库中有两个表。 就是这个 我已经写了代码作为搜索播放器的事情。我将在表单中输入用户名或userid,它将处理用户的信息 这是我的密码 搜索: 您应该在查询中使用like,如下所示 $sql = " select u.* from users u inner join ranks r ON (u.UserID = r.UserID) where u.UserID like '%" . $term . "%'"; 首先,您应该将您的config.php更
搜索:
您应该在查询中使用like
,如下所示
$sql = " select u.* from users u inner join ranks r ON (u.UserID = r.UserID) where u.UserID like '%" . $term . "%'";
首先,您应该将您的
config.php
更新为mysqli\uu
函数。
而
mysqli\u real\u escape\u string()
和mysqli\u query()
函数需要两个参数。第一个
$conn
,第二个:变量最后,您的代码应该如下所示:
<html lang="en">
<head>
<meta charset="utf-8"/>
<title></title>
</head>
<body>
<form method="POST">
Search: <input title="searchfield" required type="text" name="term"/>
<input type="submit" name="submit" value="Submit"/>
</form>
<?php
include('config.php');
if (isset($_POST["submit"]) && !empty($_POST["submit"])) {
$term = mysqli_real_escape_string($conn, $_REQUEST["term"]); //make sure the $conn isset
$sql = "SELECT u.* FROM users u INNER JOIN ranks r ON (u.UserID = r.UserID) WHERE u.UserID LIKE '%" . $term . "%'"; // change = to LIKE
$r_query = mysqli_query($conn, $sql);
while ($row = mysqli_fetch_array($r_query)) {
echo 'Name: ' . $row['Name'];
echo '<br /> Cash: ' . $row['Cash'];
echo '<br /> Score: ' . $row['Score'];
echo '<br /> Race: ' . $row['Race'];
echo '<br /> Horseshoe: ' . $row['Horseshoe'];
}
}
?>
</body>
</html>
<?php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "idkw0t";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully";
?>
为什么“%”“%$term.”“%”处有%s?问题/错误是什么?请在继续之前阅读:
mysqli\u real\u escape\u string
需要一个包含数据库连接的$conn
,否则您将遇到错误(1)您只在用户ID
中搜索,而不在名称
中搜索(2)通配符(%
)只能与类似的(3)您尝试访问从未选择的列,然后将$connect
替换为$conn
,所有列都应fine@DevilRooter更新了两个脚本。现在试试,它应该只为用户ID 1做一些小动作。当我键入“1”并按提交时。我得到了第一个用户的信息,但是2,3,4,5,6,7。什么都没有。