Php 使用select选项时出现mysql未知错误

Php 使用select选项时出现mysql未知错误,php,mysql,select,Php,Mysql,Select,我试图从一个带有php/mysql的表中获取所有内容,但它不起作用。我试图搜索,但我不知道是什么导致了错误。我希望你能帮助我 这是代码: $servername = "localhost"; //Location Of Database - usually it's "localhost" $username = "root"; //Database User Name $password = "";

我试图从一个带有php/mysql的表中获取所有内容,但它不起作用。我试图搜索,但我不知道是什么导致了错误。我希望你能帮助我

这是代码:

    $servername = "localhost";      //Location Of Database - usually   it's "localhost" 
        $username = "root";             //Database User Name 
        $password = "";                 //Database Password 
        $dbname = "hr";                 //Database Name 

        $naam = mysql_real_escape_string($_POST['filler']);     
        $naam2 = mysql_real_escape_string($_POST['name']);

        // Create connection
        $conn = new mysqli($servername, $username, $password, $dbname);
        // Check connection
        if ($conn->connect_error) {
            die("Connection failed: " . $conn->connect_error);
        }

        $sql="SELECT * FROM antwoorden WHERE 'filler'='$naam' AND
            'name'='$naam2'";

        if ($conn->query($sql) === TRUE) {
            $row = $result->fetch_row();
        } else {
            echo "Error: " . $sql . "<br>" . $conn->error;
        }

        $date = $row[2];
        $C_KVW = $row[5];
        $TL_KVW = $row[6];
        $C_AW = $row[7];
        $TL_AW = $row[8];
        $C_FB = $row[9];
        $TL_FB = $row[10];
        $C_FO = $row[11];
        $TL_FO = $row[12];
        $C_SW = $row[13];
        $TL_SW = $row[14];
        $C_WC = $row[15];
        $TL_WC = $row[16];
        $C_ST = $row[17];
        $TL_ST = $row[18];
        $C_CF = $row[19];
        $TL_CF = $row[20];
        $C_OP = $row[21];
        $TL_OP = $row[22];
        $C_IN = $row[23];
        $TL_IN = $row[24];
        $C_NA = $row[25];
        $TL_NA = $row[26];
        $C_OB = $row[27];
        $TL_OB = $row[28];
        $gemcijf = $row[29];

        echo("De antwoorden zijn: <br/>".$date." & ".$C_KVW." & ".$TL_KVW." & ".$C_AW." & ".$TL_AW." & ".$C_FB." & ".$TL_FB." & ".$C_FO." & ".$TL_FO." & ".$C_SW." & ".$TL_SW." & ".$C_WC." & ".$TL_WC." & ".$C_ST." & ".$TL_ST." & ".$C_CF." & ".$TL_CF." & ".$C_OP." & ".$TL_OP." & ".$C_IN." & ".$TL_IN." & ".$C_NA." & ".$TL_NA." & ".$C_OB." & ".$TL_OB." & ".$gemcijf );

在列名周围不需要
s-
filter
name
。您可以使用反勾号代替-

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
更新

查询中不再有错误。你正在做-

if ($conn->query($sql) === TRUE) {
它检查返回值是否与
$conn->query($sql)
相同
true
,返回值将始终为false,因为它将返回
资源
对象not
true
以获得成功
选择
。你应该像这样做-

if ($conn->query($sql)) {
相反

失败时返回FALSE。为了成功地选择、显示、描述或解释查询,mysqli_query()将返回一个mysqli_结果对象。对于其他成功的查询,mysqli_query()将返回TRUE


$conn->query($sql)
如果数据库或查询有任何错误,将返回
false

不需要在列名周围设置
过滤器或
名称
。您可以使用反勾号代替-

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
更新

查询中不再有错误。你正在做-

if ($conn->query($sql) === TRUE) {
它检查返回值是否与
$conn->query($sql)
相同
true
,返回值将始终为false,因为它将返回
资源
对象not
true
以获得成功
选择
。你应该像这样做-

if ($conn->query($sql)) {
相反

失败时返回FALSE。为了成功地选择、显示、描述或解释查询,mysqli_query()将返回一个mysqli_结果对象。对于其他成功的查询,mysqli_query()将返回TRUE


$conn->query($sql)
如果数据库或查询有任何错误,将返回
false

不需要在列名周围设置
过滤器或
名称
。您可以使用反勾号代替-

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
更新

查询中不再有错误。你正在做-

if ($conn->query($sql) === TRUE) {
它检查返回值是否与
$conn->query($sql)
相同
true
,返回值将始终为false,因为它将返回
资源
对象not
true
以获得成功
选择
。你应该像这样做-

if ($conn->query($sql)) {
相反

失败时返回FALSE。为了成功地选择、显示、描述或解释查询,mysqli_query()将返回一个mysqli_结果对象。对于其他成功的查询,mysqli_query()将返回TRUE


$conn->query($sql)
如果数据库或查询有任何错误,将返回
false

不需要在列名周围设置
过滤器或
名称
。您可以使用反勾号代替-

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
更新

查询中不再有错误。你正在做-

if ($conn->query($sql) === TRUE) {
它检查返回值是否与
$conn->query($sql)
相同
true
,返回值将始终为false,因为它将返回
资源
对象not
true
以获得成功
选择
。你应该像这样做-

if ($conn->query($sql)) {
相反

失败时返回FALSE。为了成功地选择、显示、描述或解释查询,mysqli_query()将返回一个mysqli_结果对象。对于其他成功的查询,mysqli_query()将返回TRUE


$conn->query($sql)
如果数据库或查询有任何错误,将返回
false

在数据库字段中使用此符号`

'filler'='bart' AND 'name'='willem'
替换此代码

`filler`='bart' AND `name`='willem'

在数据库字段中使用此符号`

'filler'='bart' AND 'name'='willem'
替换此代码

`filler`='bart' AND `name`='willem'

在数据库字段中使用此符号`

'filler'='bart' AND 'name'='willem'
替换此代码

`filler`='bart' AND `name`='willem'

在数据库字段中使用此符号`

'filler'='bart' AND 'name'='willem'
替换此代码

`filler`='bart' AND `name`='willem'
您混合了两个APImysqlmysqli。停止使用不推荐的mysql

所以需要更新你的变量

$naam = mysqli_real_escape_string($conn,$_POST['filler']);     
$naam2 = mysqli_real_escape_string($conn,$_POST['name']);
无需在列名周围使用
引号
-
过滤器
名称
。相反,您可以使用backticks

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
您混合了两个APImysqlmysqli。停止使用不推荐的mysql

所以需要更新你的变量

$naam = mysqli_real_escape_string($conn,$_POST['filler']);     
$naam2 = mysqli_real_escape_string($conn,$_POST['name']);
无需在列名周围使用
引号
-
过滤器
名称
。相反,您可以使用backticks

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
您混合了两个APImysqlmysqli。停止使用不推荐的mysql

所以需要更新你的变量

$naam = mysqli_real_escape_string($conn,$_POST['filler']);     
$naam2 = mysqli_real_escape_string($conn,$_POST['name']);
无需在列名周围使用
引号
-
过滤器
名称
。相反,您可以使用backticks

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";
您混合了两个APImysqlmysqli。停止使用不推荐的mysql

所以需要更新你的变量

$naam = mysqli_real_escape_string($conn,$_POST['filler']);     
$naam2 = mysqli_real_escape_string($conn,$_POST['name']);
无需在列名周围使用
引号
-
过滤器
名称
。相反,您可以使用backticks

$sql="SELECT * FROM antwoorden WHERE `filler`='$naam' AND
        `name`='$naam2'";

正如b0s3所说:保留
s

在连接/查询数据库时,请开始使用一些现代框架或至少PDO

PDO:

Medoo(轻量级php数据库框架):


GL=)

正如b0s3所说:保留
s

在连接/查询数据库时,请开始使用一些现代框架或至少PDO

PDO:

Medoo(轻量级php数据库框架):


GL=)

正如b0s3所说:保留
s

在连接/查询数据库时,请开始使用一些现代框架或至少PDO

PDO:

Medoo(轻量级php数据库框架):


GL=)

正如b0s3所说:保留
s

在连接/查询数据库时,请开始使用一些现代框架或至少PDO

PDO: