即使用户将 url 更改为另一个页面,如何显示弹出框


How to show popup box even if user change url to another page?

我用jquery upi做了一个弹出对话框,并在用户使用我的网站时问了几个问题。用户必须回答这个问题。否则,用户将无法访问我网站上的任何内容。

但问题是,当用户看到弹出框而不回答该问题,然后在地址栏中将 url 更改为特殊链接或我网站的某些链接时,他们不需要回答该问题,可以访问其他页面。

我不想在用户不回答问题之前访问他们。因此,即使用户将URL更改为另一个页面,我也想显示我的弹出框。

我在popup.php页面中提出了这个弹出问题。这是我的代码。

<?php
....//another code
....//check user session id and show dialog
...
...
echo "<div id='dialog'>";
    echo "Question"."<br/>";
    //select random answer for related question from database
    $sql = "...get answer for question...";
    $query = .....;
    while($row = mysql_fetch_array($query)){
        $a_id = $row['id'];
        $answer = $row['name'];
        echo "<input type='radio' value='"$a_id'" name='answer' class='answer'>$answer <br/>";
    }
echo "</div>";
.....
.....
<scirpt>
$("#dialog").dialog({
    autoOpen:true,
    width: 500,
    modal: true,
    resizable:false,
    draggable:true,
    position: {my: 'center', at: 'center', of: window, collision:'fit'},
    open: function (event, ui) {
        $('.ui-dialog').css('z-index',1100);
        $('.ui-widget-overlay').css('z-index',1000);
        $("#btn_submit").button("disable");
    },
    create: function(event, ui) {
        $("body").css({ overflow: 'hidden' });
    },
    buttons: {
        Submit: {
            text : "Submit",
            id : "btn_submit",
            click:function() {
                ......//another code
                $( this ).dialog( "close" );
                $.ajax({
                    type:'POST',
                    dataType:'json',
                    url:'check_question.php',//this is check for user answer is correct or not
                    data:{..//some data....},
                    success: function(data){
                                alert("success");
                            },
                    error: function () {
                            alert("Error");
                            }
                    }); 
                } 
            }      
        }
    }); 
</scirpt>
?>

我用include("popup.php")将这个文件添加到我的主页(索引.php)。

通常,我需要在网站的每个页面中检查用户是否回答。但是,这对我来说是一个问题,因为我们有很多页面。

我想编码以检查用户更改 url 并在popup.php文件中显示弹出窗口。

那么,即使用户更改了网址,有什么方法可以显示我的弹出框吗?

首先,我像这样$current_page="http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";当前页面。

并将当前页面添加到会话中,并在用户请求popup.php时检查页面表单会话是否相同。

我希望它对某人有所帮助。