gpt4 book ai didi

php - mySQL 插入带引号的语法错误

转载 作者:行者123 更新时间:2023-11-29 01:41:59 27 4
gpt4 key购买 nike

我在下面收到以下错误,我相信它部分地引用了我在插入字符串 5'10 - (178cm) 中的引号,其中由 传递$zh['height'] 变量。处理此错误的最佳方法是什么?

错误:您的 SQL 语法有误;检查与您的 MySQL 服务器版本对应的手册,了解在第 12 行的 '10 - (178cm)', m_btype = 'Rather Not Say' 附近使用的正确语法

这是 mysql 插入:

m_height = '".$en['height']."',

表格设置为:

varchar(30) latin1_swedish_ci

最佳答案

您的问题是在将字符串输入 SQL 查询之前必须“转义”字符串。不这样做将允许人们通过输入引号来更改您的查询。例如,如果我输入以下字符串:

'; select * from users; --

可能会执行您不希望执行的 SQL。解决办法是逃避:

m_height = '".mysql_real_escape_string($en['height'])."',

或者更好的是使用更新的查询 mysql 的方法,例如 PDO 或 mysqli 函数。

编辑我还认为你有一个更普遍的语法错误。试试这个:

m_height = "'".mysql_real_escape_string($en['height'])."'",

关于php - mySQL 插入带引号的语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18599900/

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