变量在单引号中无法识别

时间:2017-01-10 10:06:14

标签: php sql

我有这个SQL查询:

mysql_query("INSERT INTO Messages (MessBody,Subject,Date,StaffID,AppID) 
            VALUES ('Your application's status has been changed to ".$_POST['offer']."','Application Status Changed',NOW(),".$_SESSION['StaffUser'].",".$_SESSION['AppID'].")");

变量$ _POST ['offer']不起作用。我认为是我在文本中附加它的方式。我尝试了几种不同的方法但没有一种方法可行如果我用文本替换变量,那么记录将被添加到数据库中。

我知道这是愚蠢的事,但我无法理解。我有点困惑,说实话,什么时候使用单引号和双引号,这可能是另一个原因,为什么我无法理解。

1 个答案:

答案 0 :(得分:0)

你在不同地方缺少单引号。尝试使用以下查询

mysql_query("INSERT INTO Messages (MessBody,Subject,Date,StaffID,AppID) 
        VALUES ('Your application\'s status has been changed to ".mysql_real_escape_string($_POST['offer'])."','Application Status Changed',NOW(),'".mysql_real_escape_string($_SESSION['StaffUser'])."','".mysql_real_escape_string($_SESSION['AppID'])."')");