php - jquery 会干扰 php 吗?

标签 php jquery echo

我正在尝试限制评论和评论回复,并在达到限制后显示错误消息。我已成功限制评论和评论回复,并在仅提示评论而不是评论回复时成功提供错误消息。

评论回复有一点 jquery 与它们一起工作,所以这是我能看到的唯一会导致消息不显示的东西。除了当前使用的方法之外,我还尝试过其他方法。

$valid = true;
$max_post_per_day = 5;
$max_reply_per_day = 5;

//THE REGULAR COMMENTS STRUCTURE THAT IS SHOWING THE ERROR MESSAGE PROPERLY

$query = "SELECT COUNT(*) FROM `cysticBlogComments`
              WHERE `userID` = $auth->id
                AND `date` = CURDATE()";
    $result = mysql_query($query, $connection);
    $post_count = mysql_result($result, 0);
    $error_msgs_max_comment[] = "Whoops! You have reached the maximum amount of comments allowed for the day.";

    if($post_count >= $max_post_per_day)
    {
        $valid = false;
    }
    else
    {

    $query = "INSERT INTO `cysticBlogComments` 
                                    ( `blogID`,
                                      `userID`,
                                      `commentBody`,
                                      `status`,
                                      `date`,
                                      `time`
                                      ) VALUES (

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


    mysql_query($query, $connection);

}

<?php if(isset($_POST['commentBlogSubmit']) && $post_count >= $max_post_per_day ) {
                foreach($error_msgs_max_comment as $msg) { ?>
                <div id="error_x">
                <?php echo $msg; ?>
                </div>
                <?php }
                }?>

//THE REPLY COMMENT STRUCTURE THAT IS LIMITING BUY NOT DISPLAYING ERROR AND HAS JQUERY WITH IT

$query = "SELECT COUNT(*) FROM `CysticBlogComments_replies`
                      WHERE `FromUserID` = $auth->id
                        AND `date` = CURDATE()";
            $result = mysql_query($query, $connection);
            $post_count = mysql_result($result, 0);
            $error_msgs_max_reply[] = "Whoops! You have reached the maximum amount of replies allowed for the day.";

            if($post_count >= $max_reply_per_day)
            {
                $valid = false;
                echo $error_msgs_max_reply;
            }
            else
            {

    $query = "INSERT INTO `CysticBlogComments_replies`
                                        ( `BlogCommentID`,
                                          `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_max_reply as $msg) { ?>
                <div id="error_x">
                <?php echo $msg; ?>
                </div>
                <?php }
                }?>

//THE JS FOR THE REPLIES

<script type="text/javascript">
        $(document).ready( function() {

            $.localScroll({ offset:{top:-40,left:0} });

            $("a.reply_link").click( function() {
                $("#"+$(this).attr('name')).fadeIn('slow');
            });

            $(".respond_nevermind a").click( function(event) {
                event.preventDefault();
                var reply_box = document.getElementById($(this).attr('href'));
                $(reply_box).css('display','none');

                var reply_textarea = document.getElementById($(this).attr('href')+"_textarea");
                $(reply_textarea).val('');
            });
        });
</script>

最佳答案

PHP 在 JavaScript 执行之前在服务器上运行,因此两者无法交互。不过,JavaScript可能与 PHP 生成的 HTML 存在问题(换句话说,只是存在 JavaScript 错误),或者 HTML 本身可能包含错误,例如缺少结束 > 或引用。

关于php - jquery 会干扰 php 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10359260/

相关文章:

jquery - 全 Angular 问题第 2 部分

bash - 在 Bash 中,grep 查找一行并将该行打印到文件中,但包含更多信息

PHP:关键字搜索:在字符串中查找子字符串

php - MySQL - 将 ID 从 1 重置为最大值时出错

php - 使用 php pdo 从一行中获取 2 个值的短代码

php - 动态更改 Fieldset 字段的必需参数

jquery - CSS定位问题

javascript - 如何导出到 CSV JS/JQ 并在新选项卡中打开?

windows - 如何在 Windows 批处理文件中有条件地打开/关闭@ECHO?

bash 脚本 : echo >> returns error "No such file or directory"