php
  • mysql
  • 2012-06-13 39 views 0 likes 
    0

    我想在此函數中增加$ x以獲得表中的下一條記錄。但它只增加一次。任何幫助表示讚賞在Php MySQL數據庫中取出行

    這就是我所說的功能,

    <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> 
    
    +0

    不再維護'mysql_ *'函數,並且社區已開始[棄用過程](http://goo.gl/KJveJ)。相反,您應該瞭解[準備好的語句](http://goo.gl/vn8zQ)並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/ mysqli的)。如果你不能決定,[本文](http://goo.gl/3gqF9)將有助於選擇。如果你想學習,[這裏是一個很好的PDO相關教程](http://goo.gl/vFWnC)。 – vascowhite

    回答

    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

    sry,沒有看到你已經回答了 – Gustav

    +0

    非常感謝! –

    0

    你的PHP代碼在服務器上運行,將靜態返回給瀏覽器,JavaScript運行的地方。您需要使用Ajax才能動態獲取內容。

    -1

    如果您對Ajax不熟悉,或者因任何原因無法使用它,請將用戶轉到下一頁以顯示下一個問題。

    相關問題