ホームページ > バックエンド開発 > PHPチュートリアル > ajaxによるデータベース運用後のデータ処理の問題について

ajaxによるデータベース運用後のデータ処理の問題について

WBOY
リリース: 2016-06-23 13:52:26
オリジナル
946 人が閲覧しました

Weibo をスクロールするときなど、ページを作成するときに、一番下までスクロールして [さらに読み込む] を選択できるようになりました。データベース操作は ajax を通じて実現されます

 function ajax() {		var page=document.getElementById("pageNum").value++;          //先声明一个异步请求对象          var xmlHttpReg = null;          if (window.ActiveXObject) {//如果是IE              xmlHttpReg = new ActiveXObject("Microsoft.XMLHTTP");          } else if (window.XMLHttpRequest) {              xmlHttpReg = new XMLHttpRequest(); //实例化一个xmlHttpReg          }          //如果实例化成功,就调用open()方法,就开始准备向服务器发送请求          if (xmlHttpReg != null) {              xmlHttpReg.open("get", "pro.php?index="+page, true);               xmlHttpReg.send(null);              xmlHttpReg.onreadystatechange = doResult; //设置回调函数          }          //回调函数          //一旦readyState的值改变,将会调用这个函数,readyState=4表示完成相应          //设定函数doResult()          function doResult() {                        if (xmlHttpReg.readyState == 4) {//4代表执行完成                                                    if (xmlHttpReg.status == 200) {//200代表执行成功                      //将xmlHttpReg.responseText的值赋给ID为resText的元素                      document.getElementById("resText").innerHTML = xmlHttpReg.responseText;                                                     }              }          }              }
ログイン後にコピー

バックグラウンド データベースは PHP で実装されており、ステートメントは
…………$sql="select * from tb_test limit ".$index*4;$result = mysql_query($sql, $con);
ログイン後にコピー
です。
ここには書けません。私は何をすべきか知っています
通常は
while ($row=mysql_fetch_array($result)) {
……
} を使用します
これで、出力を変更する方法がわかりません。そして、私のフロントページでは、これらが更新されました データはテーブル内にあります


ディスカッションに返信 (解決策)

while ($row=mysql_fetch_array($result)) {
……
}
同じループで実行されますが、この時に Go up を追加して tr テーブル以下のラベルを配列に結合し、必要な出力形式に変換して結果に出力することができます。

データベースからデータを取得します (通常は配列)、echo json_encode($res);
フロントエンド JS を使用します
var res=xmlHttpReg.responseText;
res=eval('('+res+')');
解決策
res['key name'] を実行すると、対応するキーの値を取得できます

データベースから取得したデータ (通常は配列)、echo json_encode($res); を使用します

var res=xmlHttpReg.responseText を使用しますフロントエンド js の場合 ;
res=eval('('+res+')');
res['key name'] を解決した後、対応するキー値を取得できます


次に、それらのテーブルを JS で出力しますか?


1階の人が言ったように、phpでテーブル(単なる文字列)を整理し、jsを取得した後、それを直接エコーすることができ、それを解決する必要はなく、必要な位置に直接挿入できます。
htmlよりjsのループデータ整理の方が良いと思うので、phpで直接出力を整理した方が良いです
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート