PHP+AJAX 非リフレッシュ ページング実装コードの詳細な説明 最近 ajax チュートリアルを見ていて、ajax 開発フレームワークに基づいた簡単なエントリーレベルの PHP+AJAX 非リフレッシュ ページングを作成したいと思いました。
コードは次のとおりです | コードをコピー |
var http_request=false; Function send_request(url){//初期化、処理関数、リクエストを送信する関数を指定 http_request=false; //XMLHttpRequest オブジェクトの初期化を開始します if(window.XMLHttpRequest){//Mozilla ブラウザ http_request=new XMLHttpRequest(); If(http_request.overrideMimeType){//MIME カテゴリを設定します http_request.overrideMimeType("text/xml"); } } else if(window.ActiveXObject){//IE ブラウザ 試してください{ http_request=new ActiveXObject("Msxml2.XMLHttp"); }キャッチ(e){ 試してください{ http_request=new ActiveXobject("Microsoft.XMLHttp"); }キャッチ(e){} } } if(!http_request){//例外、オブジェクト インスタンスの作成に失敗しました window.alert("XMLHttp オブジェクトの作成に失敗しました!"); false を返します; } http_request.onreadystatechange=プロセスリクエスト; //リクエストメソッド、URL、次のコードを同期的に実行するかどうかを決定します http_request.open("GET",url,true); http_request.send(null); } //返された情報を処理する関数 関数 processrequest(){ if(http_request.readyState==4){// オブジェクトのステータスを決定します If(http_request.status==200){//情報が正常に返された場合は、情報の処理を開始します Document.getElementById(reobj).innerHTML=http_request.responseText; } else{//ページは正常ではありません alert("あなたがリクエストしたページは正常ではありません!"); } } } 関数 dopage(obj,url){ document.getElementById(obj).innerHTML="データを読み取り中..."; send_request(url); reobj=obj; } |
ページめくりアクションが発生すると、AJAX を使用して DIV を更新し、コンテンツを表示するページ コードを示します。
コード:
コードをコピー | |
header("Content-type: text/html;charset=GBK");//中国語の文字化けを避けるための出力エンコーディング ?> <頭> <スクリプト言語="javascrīpt" src="ajaxpg.js">スクリプト> $page=isset($_GET['page'])?intval($_GET['page']):1; //この文は、page=18 のページの値を取得します。ページ数は 1 です。 $ num = 10; $db=mysql_connect("localhost","root","7529639"); //データベース接続を作成します mysql_select_db("cr_download"); //操作するデータベースを選択します
です。
データベース全体を各ページに表示されるアイテム数で割ると、余りが 1 に丸められます。
//ページ数計算 $ Pagenum = CEIL ($ Total/$ Num) // 最後のページである合計ページ番号を取得します
$page=min($pagenum,$page);//ホームページを取得します
if($nextpg) $pagenav.=" 次のページ "; else $pagenav.= "次のページ";
エコー「エラー: ページが見つかりません」.$page; $info=mysql_query("select * from cr_userinfo limit $offset,$num"); // 対応するページ番号に表示する必要があるデータを取得します
|