2012-05-07 140 views
-1

這是我已經問過的question的更新版本。我很確定它的j-查詢不會產生干擾。出於某種原因,我在這種情況下的陳述不應該如此觸發。長話短說:我能夠限制答覆,但無法顯示錯誤消息。如果語句不觸發

一些if的工作,我一定會指出那不是。

在此先感謝。

這是工作:

if(isset($_POST['sub_comment_reply'])) { 
    if($_POST['reply'] == "") { 
    $valid = false; 
    $error_msgs_reply[] = "Whoops! You forgot to write your reply."; 
    }else{ 

     $query = "SELECT COUNT(*) FROM `CysticAnswers_replies` 
        WHERE `FromUserID` = $auth->id 
        AND `date` = CURDATE()"; 
     $result = mysql_query($query, $connection); 
     $post_count = mysql_result($result, 0); 
     $max_reply_per_day = 5; 




     //Debugging lines 
     echo "Query: {$query}<br>\n"; 
     echo "Post count for user id {$auth->id} is {$post_count}<br>\n"; 

     if($post_count >= $max_reply_per_day){ 
       $valid = false; 
       $error_msgs_replies_max[] = "Whoops! You have reached your limit of answers for the day."; 
     } 
     else 
     { 
     $query = "INSERT INTO `CysticAnswers_replies` 
              (`QuestionCommentID`, 
               `FromUserID`, 
               `comment`, 
               `status`, 
               `date`, 
               `time` 
              ) VALUES (

              '" . mysql_real_escape_string($_POST['comment']) ."', 
              '" . $auth->id ."', 
              '" . mysql_real_escape_string($_POST['reply'])."', 
              'active', 
              '" . date("Y-m-d") . "', 
              '" . date("G:i:s") . "')"; 

      mysql_query($query, $connection); 



} 

這是試圖觸發錯誤消息的部分和沒有被觸發:

<?php if(isset($_POST['sub_comment_reply']) && $post_count >= $max_reply_per_day) { 

    foreach($error_msgs_replies_max as $msg) { ?> 
    <div id="error_x"> 
    <?php echo $msg; ?> 
    </div> 
    <?php } 
?> 

<?php } ?> 
       <a name='reply_form_<?php echo $result['id']; ?>' style="clear:both"></a> 
       <div id='reply_to_<?php echo $result['id']; ?>' class="respond_structure_future" <?php if(isset($_GET['reply_to']) && $_GET['reply_to'] == $result['id']) { echo 'style="display:block;"';}else{ echo 'style="display:none;"';} ?>> 
        <div class="respond_polaroid_future"> 
         <a href="http://www.cysticlife.org/Profile.php?id=<?php echo $auth->id; ?>"> 
          <img src="<?php echo $auth->img('mini'); ?>" /> 
         </a> 
        </div>        
        <form name='comment_reply' action='<?php echo $_SERVER['REQUEST_URI']; ?>' method='post'> 
         <div class="respond_body_future round_10px"> 
          <div class="respond_arrow_future"></div> 
          <div class="respond_tail_future"></div> 
          <div class="respond_data_future"> 
           <textarea id="reply_to_<?php echo $result['id']; ?>_textarea" name='reply'></textarea><br /> 
           <input type='hidden' name='comment' value='<?php echo $result['id']; ?>' /> 
           <div class="respond_nevermind"> 
            <a href="reply_to_<?php echo $result['id']; ?>">nevermind</a> 
           </div> 
           <input type='submit' class="submit" name='sub_comment_reply' value='Reply' /> 
          </div> 
         </div> 
        </form> 
       </div> 

     <?php } ?> 
+0

沒有,它是PHP,而不是jQuery。 –

回答

3

你試過:

if (isset($error_msgs_replies_max)) foreach($error_msgs_replies_max as $msg) { 
    // Do stuff 
} else print 'No variable $error_msgs_replies_max'; 

+0

只是在加載頁面時顯示錯誤消息。我只希望它在按下提交按鈕時顯示,其他條件檢查出 – LightningWrist

+0

還需要指出的是,當我將isset($ _ POST ['sub_comment_rely'])添加到您的建議中,或在ALL中使用它時徹底殺死任何事情。 – LightningWrist

0

這也是不對您同時使用$error_msgs_replies_max$error_msgs_reply發現錯誤..請只用一個如$error_msgs_reply

你也可以更換

foreach($error_msgs_replies_max as $msg) { ?> 

foreach ($error_msgs_reply as $msg) 
+0

他確實有一個回覆,看起來更接近: