php网页不显示查询,php – PDO查询不显示结果?

首先,你使用的是

MySQL reserved word,是订单,需要特别注意;主要是用它周围的蜱虫.

然后,因为我们正在处理字符串,所以$itemName需要用引号括起来.

include('db_config.php');

$itemName = 'Item1';

$sql = "SELECT * FROM `order` WHERE itemName = '$itemName';";

$stmt = $conn->prepare($sql);

$stmt->execute();

while ($row = $stmt->fetch(PDO::FETCH_ASSOC))

{

echo $row['itemName'];

}

?>

>使用表名周围的刻度,或将其重命名为“orders”,它不是保留的关键字.

“The php file does not show any errors:”

那是因为你没有检查它们.

添加$conn-> setAttribute(PDO :: ATTR_ERRMODE,PDO :: ERRMODE_EXCEPTION);在连接打开后立即.

根据您在包含MySQL错误的问题下留下的评论:

1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘order

>在’订单开始于’订单’附近阅读它.

现在,如果您的查询应该包含MySQL将抱怨的任何字符,例如引用等,那么您将需要转义查询并使用预准备语句.

例如,如果使用:

$itemName = "Timmy's Sour Dough";

会翻译成

WHERE itemName = 'Timmy's Sour Dough'

反过来抛出语法错误.

因此,最好立即立即逃避任何数据.

编辑

您对PDO的准备和新用语的统称表明您已经尝试使用预处理语句,而不是正确的方法.你只是准备好了一些声明.代码中的一种正确方法是

$sql = "SELECT * FROM `order` WHERE itemName = ? ";

$stmt = $conn->prepare($sql);

$stmt->execute(array($itemName));

请注意我们是如何拥有的?在您的查询中,我们将在您的执行调用中为它发送一个值.你去:)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值