gpt4 book ai didi

php - 带 WHERE 子句的 Mysql SELECT 不适用于变量

转载 作者:行者123 更新时间:2023-11-29 22:47:42 25 4
gpt4 key购买 nike

我正在拔头发。我有两个基本上相同原理的 SELECT 语句。第一个可以工作,第二个不能与其中的 WHERE 子句一起工作。我需要一些新鲜的眼光和建议。我去过每个论坛并阅读了每个帖子,并尝试了许多“解决方案”但无济于事。希望有人能看到我错过的东西。

$oID = zen_db_prepare_input($_GET['oID']);

// Color coding for invoice -Start queries---

$query = "SELECT * FROM cart1_orders WHERE orders_id = $oID";
$result = $db->Execute($query);
$shiploc = $result->fields['shipping_method'];
if ($result->RecordCount() > 0) {
echo 'Test Query: = ' . $result->fields['shipping_method'];
} else {
echo 'Sorry, no record found for product number ' ;
}

$sql = "SELECT * FROM cart1_store_locations WHERE pickup_name= $shiploc";
$results = $db->Execute($sql);
$newcolorblock = $results->fields['color_code'];
if ($results->RecordCount() > 0) {
echo 'Color Query: = ' . $results->fields['color_code'];
echo 'Location: = '. $results->fields['pickup_name'];
} else {
echo 'Sorry, no record found for Color Code ' ;
}

提前感谢您的帮助和建议,希望您能够看到我看不到的东西。

第一个查询结果:测试查询:= 商店提货(Mooresville - Gold's Gym)第二次查询结果:警告:发生错误,请刷新页面并重试。

如果删除 WHERE 子句,它将返回值,但不是正确的值。我需要 WHERE 语句来获取正确的信息。

答案由 BloodyKnuckles 提供:)

$sql= "SELECT * FROM cart1_store_locations WHERE pickup_name= $shiploc";

改为:(需要转义为表数据中的 comp for )

$shiploc_escaped = mysql_escape_string($shiploc);
$sql = "SELECT * FROM cart1_store_locations WHERE pickup_name= '".$shiploc_escaped."'";

我以前没有使用过这个论坛。爱它!!!谢谢大家!

最佳答案

由于您的字符串中有单引号:

Store Pickup (Mooresville - Gold's Gym)

...您需要转义变量$shiploc:

$shiploc_escaped = addslashes($shiploc);
$sql = "SELECT * FROM cart1_store_locations WHERE pickup_name= '".$shiploc_escaped."'";

阅读Zen Cart Escaping Content ,看来这是一个选项:

$sql = "SELECT * FROM cart1_store_locations  WHERE pickup_name= '".$db->prepare_input($shiploc)."'";

...而且,更好的是,这个:

$sql = "SELECT * FROM cart1_store_locations WHERE pickup_name= :pickup_name:";
$sql = $db->bindVars($sql, ':pickup_name:', $shiploc, 'string');

关于php - 带 WHERE 子句的 Mysql SELECT 不适用于变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29023579/

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