gpt4 book ai didi

Php PDO mysql 给出与 mysql workbench 不同的结果

转载 作者:行者123 更新时间:2023-11-30 22:55:12 25 4
gpt4 key购买 nike

我从 mysql 切换到 pdo。我有以下代码:

$stmt_serverl = $db->prepare("SELECT ID, Name, IP, IP2 FROM serverl WHERE LOWER(Name) LIKE '%:name%'");

if ($row['divs'] == 1) {
$date_compare = new DateTime('2014-10-15 11:11:10');
if ($dt > $date_compare) {
$name = explode('@',strtolower($row['name']));
print_r($name);
$full_name = $name[0]."-".$name[1].$name[2];
$stmt_serverl->bindValue(':name', $name[1], PDO::PARAM_STR);
}
else {
$name = explode('@',strtolower($row['name']));
print_r($name);
$full_name = $name[0]."-".$name[1]."-".$name[2];
$stmt_serverl->bindValue(':name', $name[1], PDO::PARAM_STR);
}
}
elseif ($row['divs'] == 2) {
$name = explode('@',strtolower($row['name']));
print_r($name);
$full_name = $name[0].$name[1]."-".$name[2];
$stmt_serverl->bindValue(':name', $name[0], PDO::PARAM_STR);
}
$dt = null;

$stmt_serverl->execute();
$result = null;
$result = $stmt_serverl->fetchAll();

// println($query_serverl, $debug, $logfile);
echo "<pre>";
print_r($result);
echo "</pre>";

我从另一个工作正常的结果集中获取所有参数($row['divs'] 和 $row['name'])。当我使用 $name var 运行查询时,我得到了奇怪的结果:

Array ( [0] => Array ( [ID] => 3237 [Name] => :Name [IP] => :IP [IP2] => :IP2 )

[1] => Array
(
[ID] => 3236
[Name] => :Name
[IP] => :IP
[IP2] => :IP2
)

[2] => Array
(
[ID] => 3235
[Name] => :Name
[IP] => :IP
[IP2] => :IP2
)

[3] => Array
(
[ID] => 3234
[Name] => :Name
[IP] => :IP
[IP2] => :IP2
)

)在工作台中运行相同的查询时返回 0 个结果(完全不匹配)我不知道是什么问题。谢谢莫

最佳答案

不要引用占位符,数据库将接收 %:name% 作为值。

将您的 SQL 更改为:

SELECT ID, Name, IP, IP2 FROM serverl WHERE LOWER(Name) LIKE :name

比调整绑定(bind):

$stmt_serverl->bindValue(':name', '%'.$name[1].'%', PDO::PARAM_STR);

或者您可以在 SQL 本身中进行连接:

SELECT ID, Name, IP, IP2 FROM serverl WHERE LOWER(Name) LIKE CONCAT ('%', :name , '%')

然后您以与当前绑定(bind)相同的方式进行绑定(bind):

$stmt_serverl->bindValue(':name', $name[1], PDO::PARAM_STR);

关于Php PDO mysql 给出与 mysql workbench 不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26713714/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com