gpt4 book ai didi

mysql - WHERE 附近的 SQL 查询语法错误

转载 作者:行者123 更新时间:2023-11-29 04:21:17 25 4
gpt4 key购买 nike

我有一个非常简单的 SQL 查询,但由于某种原因无法正常工作。你能看看它有什么问题吗?谢谢!

$txn_id = $_POST['txn_id'];

$sql = "SELECT * FROM payments WHERE payments.num_operac= " . $txn_id;

$txnid_exists = mysql_query($sql);

error_log("Duplicate txn id check query failed:<br>" . mysql_error() . "<br>" . mysql_errno());

这是我得到的

[18-Apr-2014 12:24:14 UTC] Duplicate txn id check query failed:
Unknown column '0GF60424XU536804C' in 'where clause'
1054

最佳答案

$sql = "SELECT * FROM payments WHERE payments.num_operac= " . $txn_id;

$sql = "SELECT * FROM payments WHERE payments.num_operac= '".$txn_id."'";

字符串数据必须用单引号括起来。

您正在使用已弃用的 mysql_ 函数并为 sql 注入(inject)敞开大门。

开始将 mysqli_PDO 与准备好的语句一起使用。

或至少

$txn_id = mysql_real_escape_string($_POST['txn_id']);

直到你学会 mysqli_PDO

http://www.php.net/manual/en/mysqli.quickstart.prepared-statements.php

http://in3.php.net/pdo.prepared-statements

关于mysql - WHERE 附近的 SQL 查询语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23154194/

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