gpt4 book ai didi

php - 使用 PHP mcrypt 插入时查询随机失败

转载 作者:行者123 更新时间:2023-11-29 08:09:59 26 4
gpt4 key购买 nike

我的头撞到墙上了。但我使用的是 utf8_general_ci 编码,并且类型是 MySQL DB

中的 tinyblob

我在 uname、pwrod 和 email 行上使用 Mcrypt,如插入中所示。有时这会插入,有时则不会。这显然取决于用于生成加密的字符串。

这是我的插页

INSERT INTO `users` ( `uname` , `pword` , `email` , `gender` , `provider` , `level` , `dob` , `confirmed` , `regdate` , `confirmationCode`, `ip` ) 
VALUES ('“­É.¡Ec', '$2a$15$3G.7Pfap0dfWnEZxVPKWjewcLUA6tYm7a1al6I0QNZUCNcdl6E6Mu', 'ðÖŒÅÕ'Ý£mY]ª±¼ ôn´}Ð>d¢', '0','manual', '0', '2014-02-16', '0',NOW(), 'f5ab855e95eab47948b05cfe5a03e4d6', '127.0.0.1' );
Error Nr: 1064 Error Msg: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Ý£mY]??? ?n?}?>d?', '0','manual', '0', '2014-02-16', '0',NOW(), 'f5ab855e95eab' at line 14

如果我将 ' 更改为 `,则会收到以下错误:

 Error Nr: 1300 Error Msg: Invalid utf8 character string: '\x93\xAD\xC9.\xA1E\x04c'

我认为我需要更改我的字符编码?但这就是我的知识下降的地方(一般来说所有编码:))

最佳答案

您正遭受 SQL injection attack 的困扰漏洞:

  [..snip..], 'ðÖŒÅÕ'Ý£mY]ª±¼ ôn´}Ð>d¢',[..snip..]
^--start string
^---end string

您错误地构建了查询 - 要么没有转义您填充到查询字符串中的数据,要么没有使用数据库库的准备好的语句/占位符功能。

关于php - 使用 PHP mcrypt 插入时查询随机失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21816356/

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