
http://oshiete.goo.ne.jp/qa/7574571.html
でもご質問させていただきましたが、ajaxを使用してphpファイルに記述のあるmysql insert文でデータベースの登録はできました。
bbs.php
<table class="commentlist">
<!-- bbs.inc.phpファイルという別ファイルでfor文で一覧を出している。 -->
</table>
<!-- ここからがコメントの入力 -->
<form method="post">
<input type="text" name="comment" id="comment" value="" />
<input type="button" name="save" id="save" value="投稿" />
</form>
$("#save").click(function(){
var p = $("#comment").val();
$("#comment").val("");
$.post( "bbs.php", { request:p, success: (ここがわからない。)});
});
としたときにフォームでpostしたときにページ全体にリロードではなくclass="commentlist"の一覧のみリロードしたいのですが、どうもできません。
どなたかご教示お願いします。
(bbs.inc.phpはソース内には残したくないです。)
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
まずはphp側で一覧を取得してresultに値が入るかを目指しましょう。
この回答への補足
phpで一覧の取得をしております。
bbs.inc.php
-- LEFT JOINを使用してのmysql接続 --
//$row['name']はjoinで別テーブルからの呼び出し
while ($row = mysql_fetch_assoc($commentres)) {
$commentlist .= '<p>' .$row['name']. ':' .$row['comment'].$row{'date']. '</p>'."\n";
}
bbs.php
<div id="commentlist">
<?php echo $commentlist; ?>
</div>
<form method="post">
<input type="hidden" name="bbs_id" id="bbs_id" value="<?php echo $bbs_id; ?>" />
<input type="hidden" name="name_id" id="name_id" value="<?php echo $name_id; ?>" />
<input type="text" name="comment" id="comment" value="" />
<input type="button" name="save" id="save" value="投稿" />
</form>
$(function(){
$("#save").click(function(){
var a = $("#bbs_id").val();
var b = $("#name_id").val();
var p = $("#comment").val();
$.ajax({
type: "POST",
scriptCharset: 'utf-8',
dataType:'json',
url: "bbs.php",
data: { bbs_id:a, name_id:b, comment:p },
success: function(result){
alert('通る');
},
error:function(){
alert('通らない');
}
});
});
});
といたしております。
必ずerrorを通ってしまいます。
どうかご教示お願いします。
No.1
- 回答日時:
Ajaxの処理の流れは以下のようになります。
1) 登録
2) 一覧取得
3) htmlに書き出し
bbs.php内でデータ登録、一覧取得してsuccess部分で表示させます。
success: function(rerult){
}
※rerultはbbs.php内でprint_rした配列
success: function(rerult){
// この中にhtmlに書き出す処理をすればOKです。
}
success: function(rerult){
var html = '';
for (var i = 0; i < rerult.length; i++) {
// 配列を回してテーブルの中を作る
html = html + '<tr><td>rerult.val</td></tr>';
}
$(".commentlist").val(html);
}
お忙しい中有難う御座います。
上記の内容を少々カスタマイズして、
こちらの環境用にしたのですが、リロードがされませんでした。
結果はsuccessがundefind(fire bugで確認)になってしまいます。
変更したところはi<result.length;をi<30にして
html = html + '<tr><td>rerult.val</td></tr>';
を
html = html + '<tr><td><?php echo $name; ?></td><td><?php echo $comment; ></td></tr>';
としています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PDFを(htmlのように)無限に縦...
-
バッチファイル 特定ウインドウ...
-
C言語のflagの使い方が分かりま...
-
二つのbxsliderをレスポンシブ...
-
正規表現で、特定の文字列を含...
-
php コールバック関数
-
ナイトボットのAliasについて
-
これってなんの電話かわかりま...
-
VBAでクイズゲームの作り方
-
以下のURL入れますか?皆さんは↓
-
画像のドットの部分が抜けてい...
-
Chinapost こよパズルどう動か...
-
非同期通信で掲示板を作る際の...
-
非同期通信を使うタイミングが...
-
PYTHONのtkinterについて
-
Pythonのtkinterについて
-
Pythonを勉強する道のり
-
Pythonを無料(安価)で学ぶ方...
-
RPA(PowerAutomate)の実装について
-
ワードでA3横の画面にして、文...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavascriptからPHPへのAjax通信...
-
jQuery を外部ファイルから呼び...
-
jQueryのblockUIをformのボタン...
-
jQueryで外部テキストファイル...
-
jquery × php × mysql 非同期で...
-
Ajaxでのチャットについて教え...
-
ajaxでPHPにPOST送信して結果デ...
-
JQueryの変数の扱いで弱ってい...
-
Ajax・jQueryでGET時にIE...
-
jQueryを使いformでsubmitした...
-
Ajax・jQueryでGETとPOSTする方法
-
JSONをperlで受け取る方法
-
ajax + PHPによるエラーの返し...
-
Ajax サーバーに負荷かかります...
-
ajaxからphpにpsotしたときの日...
-
Win11 へのRufus と レジストリ...
-
階層別の組織図の自動作成について
-
JavaScriptでtabindexの変更っ...
-
Javascriptを使ってQRコード読...
-
同一ページ移動時ハンバーガー...
おすすめ情報