39

list.php: Mysql テーブルのレコードのみを表示する単純な ajax コード:

<html>

<head>
    <script src="jquery-1.9.1.min.js">
    </script>
    <script>
    $(document).ready(function() {
        var response = '';
        $.ajax({
            type: "GET",
            url: "Records.php",
            async: false,
            success: function(text) {
                response = text;
            }
        });

        alert(response);
    });
    </script>
</head>

<body>
    <div id="div1">
        <h2>Let jQuery AJAX Change This Text</h2>
    </div>
    <button>Get Records</button>
</body>

</html>

Records.php は、Mysql からレコードを取得するためのファイルです。
データベースには、「名前」、「住所」の 2 つのフィールドしかありません。

<?php
    //database name = "simple_ajax"
    //table name = "users"
    $con = mysql_connect("localhost","root","");
    $dbs = mysql_select_db("simple_ajax",$con);
    $result= mysql_query("select * from users");
    $array = mysql_fetch_row($result);
?>
<tr>
    <td>Name: </td>
    <td>Address: </td>
</tr>
<?php
    while ($row = mysql_fetch_array($result))
    {
        echo "<tr>";
        echo "<td>$row[1]</td>";
        echo "<td>$row[2]</td>";
        echo "</tr>";
    }   
?>

このコードは機能していません。

4

5 に答える 5

4

ajax の戻り値を返すことはできません。グローバル変数を保存した後、戻り値を保存します。
または、コードを次のように変更します。

AjaxGet = function (url) {
    var result = $.ajax({
        type: "POST",
        url: url,
       param: '{}',
        contentType: "application/json; charset=utf-8",
        dataType: "json",
       async: false,
        success: function (data) {
            // nothing needed here
      }
    }) .responseText ;
    return  result;
}

于 2013-05-23T07:25:35.903 に答える
3

$row[1] , $row[2]正しい値が含まれていることを確認してください1 = Name , and 2 here is your Address field

Records.phpからレコードを正しくフェッチしたと仮定すると、次のようなことができます。

$(document).ready(function()
{
    $('#getRecords').click(function()
    {
        var response = '';
        $.ajax({ type: 'POST',   
                 url: "Records.php",   
                 async: false,
                 success : function(text){
                               $('#table1').html(text);
                           }
           });
    });

}

あなたのHTMLで

<table id="table1"> 
    //Let jQuery AJAX Change This Text  
</table>
<button id='getRecords'>Get Records</button>

ちょっとしたメモ:

推奨されなくなったため、PDO http://php.net/manual/en/class.pdo.phpを学習してみてください。mysql_* functions

于 2013-05-23T08:26:59.583 に答える