Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/263.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php sql语法错误?_Php_Mysql - Fatal编程技术网

Php sql语法错误?

Php sql语法错误?,php,mysql,Php,Mysql,我有一个php表单,它告诉我在提交时我的sql语法有错误,但是我没有回答,因为相同的表单和php在另一个站点上工作,该站点通过相同的提供者托管,但是在不同的服务器上: 以下是一些php(可疑问题区域): 如果需要更多的代码,请告诉我;如果有人能告诉我哪里出了问题,我将不胜感激,也许我的知识已经过时了,我需要重新学习mysql和php,但我认为这应该是可行的。你在“$ext”之后错过了一个偏执: $sql = mysql_query("INSERT INTO members (name, em

我有一个php表单,它告诉我在提交时我的sql语法有错误,但是我没有回答,因为相同的表单和php在另一个站点上工作,该站点通过相同的提供者托管,但是在不同的服务器上:

以下是一些php(可疑问题区域):


如果需要更多的代码,请告诉我;如果有人能告诉我哪里出了问题,我将不胜感激,也许我的知识已经过时了,我需要重新学习mysql和php,但我认为这应该是可行的。

你在“$ext”之后错过了一个偏执:

  $sql = mysql_query("INSERT INTO members (name, email, password, streetadd, city, state, zip, phone, ext)
VALUES('$name', '$email', '$password', '$streetadd', '$city', '$state', '$zip', '$phone', '$ext')")
or die (mysql_error());
$id = mysql_insert_id();

mkdir("members/$id", 0755);

另一件事是,你可以让这些字段中的一个是整数或其他数字,而这些引号可能是个问题。如果需要更多帮助,请发布表格shema查询似乎很好。

我不知道问题是否来自这里,但您的查询不完整,您忘记关闭括号:

试试这个:

 $sql = mysql_query("INSERT INTO members (name, email, password, streetadd, city, state, zip, phone, ext)
VALUES('$name', '$email', '$password', '$streetadd', '$city', '$state', '$zip', '$phone', '$ext');")
or die (mysql_error());

但正如人们在评论中所说,你不应该使用这种旧方法。PDO更好地使用预先准备好的语句(它更安全)。或者至少使用mysqli。

使用PDO!保护自己免受注射。使用PDO或至少mysqli。。。哦,mysql_error()给你的错误是…你忘了在你的值结束时关闭
了吗?@jdwire,不,对不起,它在那里,我在发布SOI时不小心删除了它。如果你让这段代码正常工作并投入使用,你就是在要求被黑客攻击。这是如此鲁莽的不安全,修复它真的不是一个好主意。拿起PDO并有效地使用它需要30分钟。谢谢,我注意到多亏了jdwires的评论,我在编辑发布代码的8空间交易时删除了它,不过眼光不错,谢谢!在运行脚本中,它是存在的。然后请尽可能模糊地发布错误消息。还要确保表与这些字段匹配。
 $sql = mysql_query("INSERT INTO members (name, email, password, streetadd, city, state, zip, phone, ext)
VALUES('$name', '$email', '$password', '$streetadd', '$city', '$state', '$zip', '$phone', '$ext');")
or die (mysql_error());