插入查询问题?

时间:2012-08-16 12:09:32

标签: php mysql

在这里输入代码我正在编写插入查询,但是当我正在运行时,显示错误。

您的SQL语法有错误;检查与MySQL服务器版本对应的手册,以便在第11行的“select”附近使用正确的语法

这是代码。

if(isset($_POST['Submit']))
{
 $query= "INSERT INTO  ambition_opportunities SET
 opp_provider='".$_POST['provider']."',
 opp_category='".$_POST['category']."',
 opp_pre_location ='".$_POST['prelocation']."',
 opp_industry='".$_POST['Industry']."', 
 opp_qualification='".$_POST['qualification']."',
 opp_decipline='".$_POST['Decipline']."',
 opp_scale='".$_POST['scale']."',
 opp_want='".$_POST['want']."',
 opp_functional='".$_POST['functional']."',
 opp_email='".$_POST['email'].",
 opp_yourself='".$_POST['yourself']."',
 opp_opportunity='".$_POST['opp']."',
 opp_organization='".$_POST['Orga']."',
 opp_add_location='".$_POST['loca']."',
 opp_deadline='".$_POST['deadline']."',
 opp_source='".$_POST['source']."',
 opp_start='".$_POST['calender1']."',
 opp_end='".$_POST['calender2']."',
 opp_prize='".$_POST['prize']."',
 opp_about_organization='".$_POST['organization']."',
 opp_about_opportunity='".$_POST['Oppurtunity']."',
 opp_eligibity='".$_POST['Eligibilty']."', 
 opp_offer='".$_POST['Offer']."', 
 opp_application='".$_POST['Application']."',
 opp_status='".$_POST['status']."'"; 

    $sql = mysql_query($query) or die(mysql_error());

}
?>

请帮帮我..

由于

1 个答案:

答案 0 :(得分:2)

你错过了关闭'的结果:

opp_email='".$_POST['email'].",
//---------------------------^

可能发生的情况是,您的另一个输入中包含“select”一词,其中引号翻转使查询相信您正试图在某个地方使用SELECT。< / p>

作为一个注释,您当然应该使用预准备语句来确保您的输入已被清理,而不是直接在查询中使用用户输入。这导致各种不好的事情(环顾SQL注入)。

在没有消毒输入的情况下,丢失的'甚至不能成为问题。如果某人有输入isn't this great?,并且你尝试直接使用它,那么它也会给你一个错误。