私はユーザーが提出できるリンクのデータベースを持っています。ユーザーが新しいリンクを送信するたびに、そのリンクがデータベースに追加されます。私は、送信されたすべてのリンクを一覧表示する別のページを持っています。どのようにしてこの別のページにデータベースの変更をチェックして、それが見つかるとAJAXでロードすることができますか?PHP + jQuery AJAXを使用してMySQLデータベースの変更をチェックし、変更をロードしますか?
答えて
データベースの内容に応じて更新する必要があるページは、DBを頻繁にポーリングする必要があります。 Javascriptはクライアント側の技術であり、バックエンドサーバーと直接対話するためのものではありません。
javascriptのは(jqueryのを使用して)次のようになります。
$.post("/webroot/checkForChanges.php",
{ currentNumber: currNumString },
function(dat){
$(dat).find('link').each(function() {
$('#linksTable').append(""+$(this).text()+"");
});
});
これは値を持つcurrentNumberという名前の変数を使用すると、書き込みますページ(checkForChanges.php)へのPOSTリクエストを行います現在テーブル内にあるリンク数の文字列表現(好きなものを数えます)。
コードのfunction(dat)部分は、要求が完了したとき(つまり、PHPページの処理が終了し、結果のテキストがブラウザに受信されたとき)に実行されるコールバック関数です。
私は、PHPページが何をしているのかを説明したとき、これが何をしているのかに戻ってきます。
あなたはデータベース構造について何も教えていませんが、人々がリンクを追加できるようにするためには、リンクの整数IDを追跡するシーケンスをどこかに定義する必要があります。データベースに一意のIDが与えられている)。このページで返される出力はノードを持つXML文書となります
//open a database connection
$DB = connect(name, user, password);
//receive value
$currNum = $_POST['currentNumber'];
//check to see if sequence number has incremented since last time:
$seqNum = query("SELECT currval('links-count')");
if ($seqNum == $currNum){
exit(0);
} //if they are the same, just exit the page without writing anything
//otherwise, carry on... get the result of your query (for new links)
//and loop through, echoing return data
$newEntries = query("SELECT url FROM links WHERE id > ".$currNum);
echo "<newlinks>";
while ($result = fetch_result($newEntries)) {
echo "<link><a>".$result."</a></link>";
}
echo "</newlinks>";
:私はあなたが次の擬似コードで単純なPHPページを作成する必要があり この「リンクカウント」と呼ばれてきたと仮定しますテーブルセルに配置するHTMLを含むリンクごとに今
私たちはあなたのクライアント側のJavaコードで$ .post要求にコールバック関数に戻ることができます:、
function(dat){
$(dat).find('link').each(function() {
$('#linksTable').append(""+$(this).text()+"");
});
});
DATが返されたテキストであるjQueryオブジェクトとしてそれをラップしてから見つけます「リンク」という名前のタグの集合。 phpページから返された 'link'タグごとに、linkタグ内のデータを含むlinksTableに新しいテーブル行を追加する関数を実行します。
基本的にdbの変更をポーリングする別のページにアクティブなjavascriptを置くことができます。または、成功したサブミット後にコールバック関数を使用することができます。私はここに何が起こっているのか正確には分からないので、何を推薦すべきか分からない。
- 1. PHP - MYSQLデータベースから変数を使用してHTMLテキストを変更する
- 2. jQuery AjaxとPHPを使用してSQLデータベースを更新する
- 3. jquery ajaxを使用して選択ドロップダウン値を動的に変更します
- 4. JQueryまたはAJAXを使用してexternalpage.phpの代わりにsamepage.phpにcontent.phpをロードして変更します。
- 5. AJAXを使用してPHPカレンダーの月を変更する
- 6. AJAXを使用してデータベースを更新
- 7. AJAXを使用してPHPにJquery変数を渡します。
- 8. MYSQLをjQuery/AJAXで更新します
- 9. jQueryはデータベースを変更するリンクを使用します
- 10. codeigniterでjquery ajaxを使用してdivタグのhtmlを変更します。
- 11. jQuery AjaxがPHP提出のテキストを変更します
- 12. PHPを使用してMySQLフィールドを変更する
- 13. クエリを使用してMySQLデータベース名を変更
- 14. jQueryを使用して画像を変更しますか?
- 15. jqueryを使用してテーブルtdスタイルを変更します。
- 16. PHPを使用してタイムゾーンを変更
- 17. mySQLデータベースの変更をリッスンする(PHPを使用)
- 18. jqueryを使用してmysqlデータベースからデータをロードする
- 19. codeigniter ajaxを使用してデータベースを更新してから
- 20. カーソルループを使用してデータベースを変更しようとしましたが、データベースは変更されません
- 21. 更新のMySQLデータベースのテキストボックスを使用してPHPのフォームを使用して
- 22. jqueryを使用して画像のプロパティを変更します。
- 23. Jqueryを使用してドロップダウンの値を変更します
- 24. AJAX、PHP、MySQLを使用して 'hidden-fields'の値を保存し、ボタンのテキストを 'Join'に変更する方法
- 25. AJAXの結果でjqueryを使用してアイコンを変更する
- 26. CodeIgniterでjquery timepickerを使用してmySQLデータベースを更新する
- 27. Jquery Ajax Ruby on Railsを使用してデータベースを更新
- 28. JQuery/AJAXを使用してPHPファイルから変数を取得
- 29. PHPを使用してMYSQLデータベースを更新する
- 30. Ajax、PHP、MySqlを使用して同じページにフォームを更新
まあ、それは私がしばらく時間をかけたかなり完全な答えです... bballbackus、それを試しましたか?あなたはそれを受け入れるか投票することができますか、または少なくともあなたのコメントにいくつかのフィードバックを与えることができますか?ありがとう – sillyMunky