0

我正在尝试为用户注册创建电子邮件验证。

我正在按照分步说明进行操作,但我陷入了应该很简单的事情。

我应该使用 MySql 查询将以下内容插入数据库:

mysql_query("INSERT INTO users (username, password, email, hash) VALUES(
'". mysql_escape_string($name) ."',
'". mysql_escape_string(md5($password)) ."',
'". mysql_escape_string($email) ."',
'". mysql_escape_string($hash) ."') ") or die(mysql_error()); 

我正在使用 WAMP 服务器。我去我的数据库,选择表,在选择 SQL 选项卡后插入上面的内容,单击 go 并得到响应:

"#1064 - 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,了解在 'mysql_query("INSERT INTO users (username, password, email, hash) VALUES('" .m' 在第 1 行"

我似乎永远无法将查询插入到 phpMyAdmin 数据库中而不会出现某种错误。我希望有人能对此有所了解,让我有一个外部的看法。

不用说,我将不胜感激任何意见。我对此并不陌生,而且不知所措。

4

2 回答 2

1

您不能在 SQL 中使用 PHP 函数。改为运行 PHP 代码

于 2012-10-29T22:33:57.293 回答
1

正如 Prash 所说,mysql_query它们mysql_escape_string的名字旁边是 php 函数。粘贴到 phpMyAdmin 的 SQL 选项卡时,您应该删除代表 PHP 对 MySQL db 的调用的 mysql_query(),并将 mysql_escape_string 调用转换为变量的计算值 ($...)。它应该给你类似的东西:

INSERT INTO users (username, password, email, hash) VALUES(
'SampleName',
md5('SamplePassword'),
'SampleEmail@example.com',
'SampleHash') 

如果值中有特殊字符,则需要自行转义)

于 2012-10-29T22:48:41.343 回答