Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Mysql/PHP获取具有名称或用户ID的用户信息_Php_Mysql - Fatal编程技术网

从Mysql/PHP获取具有名称或用户ID的用户信息

从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更

我能知道这里出了什么错吗? 我的数据库中有两个表。 就是这个

我已经写了代码作为搜索播放器的事情。我将在表单中输入用户名或userid,它将处理用户的信息

这是我的密码


搜索:

您应该在查询中使用
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。什么都没有。