2011-09-10 61 views
2

我最近创建了一个PHP/MySQL注释系统,并且它一直工作到几个小时前(代码中根本没有任何变化)。当我告诉提交表单代码以回显查询时,它显示缺少用于评论文本和日期的区域。我不明白为什么。这里是我的代码:PHP没有处理某些表单域

 
mysql_connect("localhost","commentUser","password"); 
mysql_select_db("comments"); 
$name = mysql_real_escape_string($_POST['name']); 
$postID = mysql_real_escape_string($_POST['postId']); 
if(!is_numeric($postID)) 
    exit(); 
$email = mysql_real_escape_string($_POST['email']); 
$comment = strip_tags(mysql_real_escape_string($_POST['comment']), ''); 
$date = mysql_real_escape_string($_POST['date']); 

if($email == '' || $comment = '' || $date = '') 
    exit(); 

$query = "INSERT INTO comments (PostID,Name,Email,Text,Date) VALUES($postID, '$name', '$email', '$comment', '$date')"; 
mysql_query($query) or die(mysql_error()); 
mysql_close(); 

    echo " 
     
      window.location = \"snippet.php?id=$postID\"; 
     
    "; 

+1

你应该张贴的HTML代码的形式 –

+1

您可以张贴HTML表单的代码? – itsmeee

+0

帖子中是单个等号的拼写错误,还是他们在实际的代码中?如果($ email ==''|| $ comment =''|| $ date ='')都应该是double equals。 – Charlie

回答

3

要指定空字符串$comment$date=

if($email == '' || $comment = '' || $date = '') 
    exit(); 

// Should use `==` for all three: 
if($email == '' || $comment == '' || $date == '') 
    exit(); 
+0

谢谢,那真是一个笨拙的错误 – airplaneman19