在Php MySQL数据库中获取行

时间:2012-06-13 07:08:20

标签: php mysql

我想在此函数中增加$ 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>

3 个答案:

答案 0 :(得分: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'] ;
    }
 ?>

答案 1 :(得分:0)

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

答案 2 :(得分:-1)

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