0

我只是建立了一个 mysql 数据库,虽然我的 php 没有打印出我想要打印的信息。

这是我的代码的样子(我已经连接到 mysql 并成功创建了一个数据库,我只需要它打印出我插入的内容):

// will insert into the table
mysqli_query ($con, "INSERT INTO alarms(Title, Description, DT)
VALUES(getSucked, Agha will smd, 2013-08-05 00:15:12)");

//will print out what we just insert into the table, ie agha smd's
$result = mysqli_query($con,"SELECT * FROM alarms");
while ($row = mysqli_fetch_array($result))
{
echo $row['alarmID'] . " <br> " . $row['Title'] . " <br> " . $row['Description'] . " <br> " . $row['DT'];
}

//closing connection
mysqli_close($con);
echo "<br><br>connection has been closed";

我不断收到的警告/错误是:

“警告:mysqli_fetch_array() 期望参数 1 为 mysqli_result,布尔值在 B:\DropBox\Dropbox\EbadlyAgha\Ebad\reminders.php 第 83 行给出”

第 83 行是 while 循环开始的地方。

4

4 回答 4

1

您的查询未能运行。mysqli_query如果查询未执行,将返回false,因此会发出mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given. 在与数据库交互时,您应该始终检查返回值,以确保您了解正在发生的事情。PHP 很乐意默默地将许多类型强制转换为其他类型,因此您必须非常主动地进行错误检查。

于 2013-08-05T06:27:51.660 回答
0

Insert将您的查询更改为

mysqli_query ($con, "INSERT INTO alarms(Title, Description, DT)
VALUES('getSucked', 'Agha will smd', '2013-08-05 00:15:12')");

当您提供空格时,您的插入查询将失败。尝试将它们放在引号中。

于 2013-08-05T06:26:50.170 回答
0

采用

mysqli_query ($con, "INSERT INTO alarms(Title, Description, DT)
VALUES(getSucked, 'Agha will smd', '2013-08-05 00:15:12')");

并尝试回显查询并运行到 phpmyadmin。因为您的值带有空格,因此您必须在“”中使用它。

于 2013-08-05T06:26:53.497 回答
0

mysqli_query 在失败时返回 FALSE。

尝试

if ($result) {
    while ($row = mysqli_fetch_array($result))
    {
    echo $row['alarmID'] . " <br> " . $row['Title'] . " <br> " . $row['Description'] . " <br> " . $row['DT'];
    }
}
于 2013-08-05T06:28:09.923 回答