0

我想在此函数中增加 $x 以获取表中的下一条记录。但它只增加一次。任何帮助表示赞赏

这是我调用的函数,

<script type="text/javascript">
    function getnextques(){
        document.getElementById("quescontent").innerHTML= '<?php
        $x++;
        $res = mysql_query("SELECT * FROM question_content WHERE id=".$x) or die(mysql_error());  
        while($row=mysql_fetch_array($res)){
            echo $row['ques'] ;
        }; 
        ?>'
}
</script>

从 ,

<a href="javascript:getnextques()" class="startbutton" id="mediumone"> Next </a>
4

3 回答 3

4

你不能像那样JavascriptPHP. PHP是基于服务器端的,javascript是基于浏览器的。

您应该为此使用 Ajax ( jQuery)

例如:

<script type="text/javascript">
var x = 0;
function getnextques(){
    var newX = x++;
    $.ajax({
        type: "POST",
        url: 'script.php',
        data: { x: newX },
        success: function(data) {
            document.getElementById("quescontent").innerHTML = data;
        }
    });
}
</script>

script.php

<?php
    // mysql connection
    $x = (int) $_POST['x'];
    $res = mysql_query("SELECT * FROM question_content WHERE id=".$x) or die(mysql_error());  
    while($row=mysql_fetch_array($res)){
        echo $row['ques'] ;
    }
 ?>
于 2012-06-13T07:10:22.490 回答
0

您的 php 代码在服务器上运行,并将静态返回到运行 javascript 的浏览器。您需要使用Ajax来动态获取内容。

于 2012-06-13T07:13:22.153 回答
-1

如果您不熟悉 Ajax,或者由于任何原因无法使用它,请将用户带到下一页以显示下一个问题。

于 2012-06-13T07:14:26.817 回答