-1

これは、私がすでに尋ねた質問のほとんど更新されたバージョンです。私が持っているj-queryが干渉していないことはかなり確信しています。何らかの理由で、この場合の私のifステートメントは正常にトリガーされません。簡単に言うと、返信を制限することはできますが、エラーメッセージを表示できません。

いくつかの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 } ?>
4

2 に答える 2

3

やってみました:

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

?

于 2012-05-07T16:38:01.097 に答える
0

$error_msgs_replies_maxこれは、両方を使用していることと$error_msgs_replyエラーをキャッチすることも間違っています。たとえば、1つだけを使用してください。$error_msgs_reply

交換することもできます

   foreach($error_msgs_replies_max as $msg) { ?>

foreach ($error_msgs_reply as $msg)
于 2012-05-07T16:40:25.557 に答える