-2

以下 MySQL 语句在 PHP 运行时报告错误的 SQL 语法,但我找不到任何明显的错误。

"INSERT INTO {$UserTable} (username, password, email, salt) VALUES ({$Username}, {$Password}, {$Email}, {$Salt});"

我在脚本中添加了一些调试功能,以查看问题所在,但尚未注意到问题。

最终查询

INSERT INTO users (username, password, email, salt) VALUES (TestUser, ea55336ae722b176a64eff46bbf7eeb0f5053a04f5e94670d719656dc496a8a754dd3e36ead83459020021526747b0a9fc82c397a40699e64f37ad2460a61067, TestEmail, EWEQPVVWIGX);

错误信息

Unknown column 'TestUser' in 'field list'
4

3 回答 3

2

用单引号包裹各个值。

 "INSERT INTO {$UserTable} (username, password, email, salt) VALUES ('{$Username}', '{$Password}', '{$Email}', '{$Salt}');"
于 2013-06-29T10:21:41.003 回答
1

最终查询应该是

INSERT INTO users (username, password, email, salt) 
VALUES ('TestUser', 'ea55336ae722b176a64eff46bbf7eeb0f5053a04f5e94670d719656dc496a8a754dd3e36ead83459020021526747b0a9fc82c397a40699e64f37ad2460a61067','TestEmail', 'EWEQPVVWIGX');
于 2013-06-29T10:23:38.683 回答
0

您需要在所有字符串周围添加单引号

于 2013-06-29T10:23:17.627 回答