Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/69.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,我无法理解是什么让这段代码将数据插入mysql。。我在尝试插入代码“插入问题:您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以了解在第1行使用“order(f_name)values(“”)”附近的正确语法。请帮助。请使用简化的语言,因为我在这个领域是新手 <div class="order_form"><form action="buy.php" method="post"> <table width="330" border="0">

我无法理解是什么让这段代码将数据插入mysql。。我在尝试插入代码“插入问题:您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以了解在第1行使用“order(f_name)values(“”)”附近的正确语法。请帮助。请使用简化的语言,因为我在这个领域是新手

<div class="order_form"><form action="buy.php" method="post">

<table width="330" border="0">
<tr>
<td colspan="2" height="30" bgcolor="#705a6b"><div align="center" class="style4">Order Foram 

</div></td>
</tr>
<tr>
<td width="102" height="30">First Name* </td>
<td width="227" style="border:solid; border-color:#CC99FF; border-width:1px; "><input name="f_name" type="text" size="40" maxlength="100"/></td>
</tr>
<tr>
<td height="30"><input name="submit" type="submit"/></td>
</tr>

</table>
</form>     

<?php 
if (isset($_POST['submit']))
{

$f_name = mysql_real_escape_string($_POST['f_name']);

$que="insert into order (f_name) values ('$f_name')";   

if (mysql_query($que))

{

echo "say something";

}

else {

die("Insert Problem: " . mysql_error());     

}
}

?>
</div>          

孔序
名字*
ORDER
是MySQL中的一个名称,需要用反勾号包围,以用作表名或列名

$que="insert into `order` (f_name) values ('$f_name')"; 

将您的查询更改为:

$que="insert into `order` (`f_name`) values ('$f_name')";  

请注意背面的标记。sql查询中保留了一些单词,如
order

看起来像
$f_name
'
order
是sql中的保留单词。如果您真的需要使用它,请用反勾号将其引用出来。但如果可能的话,应该避免使用保留字作为表名和列名
$que=“插入订单(f_名称)值(“$f_名称”)”;echo($que);返回并告诉我们回声是什么。这将使你的问题更容易解决。重复的和许多其他问题…非常感谢兄弟。。当我搜索某个东西并从“stackoverflow”中获得最大数量的结果时,我曾经很恼火,现在我对此感到内疚。。。再次感谢你为我节省了时间。