在我的msql表中,一行的列代码为“1001000181026”。
我的php脚本只对粗体部分(1810)感兴趣,我对代码的其他字符使用下划线通配符(\)。
但是:它不适用于pdo(0个结果)!另一方面,如果我写 SELECT
手动编码到phpmyadmin中,效果很好(1个结果)。
以下是pdo/php代码(不起作用):
$code = '_______1810__';
$preparequery = 'SELECT * FROM table WHERE code LIKE :code';
$stmt = $conn->prepare($preparequery);
$stmt->bindValue("code", $code);
$y = $stmt->rowCount();
echo '<p>We have '.$y.' row(s).</p>'; // We have 0 row(s).
phpmyadmin中的查询工作正常:
SELECT * FROM `table` WHERE code LIKE '_______1810__'
这给了我一个结果,正如预期的那样。
php代码(pdo)可能有什么问题?谢谢你的帮助!
1条答案
按热度按时间x7rlezfr1#
您可以将查询更改为:
这样您就不必担心占位符是如何工作的。另外,php方面将更加简化。