- ベストアンサー
ページを遷移せずにデータ送信
- SNSなどで使われるコメント投稿の際、ページ遷移せずにデータを送信しMySQLに登録する方法について教えてください。
- PHPでのデータ処理については触れたことがありますが、AjaxやJavaScriptは初めてで、適切な情報に辿り着けない状況です。
- テキストフォームを設置し、そのデータをDBに登録するためのスクリプトについて教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>No.2お礼 >今回の質問時、サンプルとして提示させて頂いたのは、index.html、post.js、post.phpの3つのファイルから構成されていますが、今回ご提示頂いたスクリプトは、index.htmlに全て記述し、post.jsは利用しない。という認識で宜しかったでしょうか? どちらでもいいです。 作りやすい方法で作ってください。 >それと、テキストフォームにnema属性としてsomethingが与えられていますが、このフォームの値はどのようにして取得したら宜しいのでしょうか? 全部jQueryがやってくれます。 PHPの話であれば、通常の<form>送信と同じです。
その他の回答 (2)
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
失礼しました。 サンプルコードはフォームの内容を送信してるのではなく、引数固定で文字列を渡してますね。 <form action="post.php" id="ajaxpostform"> フォームフィールドを適宜。<input type="text" name="something"> <input type="submit" value="送信"> </form> <script> $(function(){ $('#ajaxpostform').submit(function(event){ $.post( this.action, {data: $( this ).serialize()}, function(json){alert("フォームをPOSTしました");}); event.preventDefault(); }); });//$ </script>
お礼
talooさん 早速のアドバイスありがとうございます。感謝いたします。 今回の質問時、サンプルとして提示させて頂いたのは、index.html、post.js、post.phpの3つのファイルから構成されていますが、今回ご提示頂いたスクリプトは、index.htmlに全て記述し、post.jsは利用しない。という認識で宜しかったでしょうか? それと、テキストフォームにnema属性としてsomethingが与えられていますが、このフォームの値はどのようにして取得したら宜しいのでしょうか? 質問ばかりで恐縮ですが、ちゃんと理解したいと思う気持ちからの質問です。引続きアドバイスのほど頂戴出来たら幸いです。
- 神崎 渉瑠(@taloo)
- ベストアンサー率44% (1016/2280)
紹介されている3行が全部です。 おおよそ想像されている長ったらしいJavaScriptコードは、jQueryというライブラリに全て書かれていますので、自分で書く必要はありません。
お礼
talooさん はじめまして。早速の回答をありがとうございます。 >紹介されている3行が全部です 仰っているのは配布されている、post.jsのことかと思いますが、 サンプルはテキストフォームなどは一切なく、テキストフォームを設置した場合の post.jsの記述法が判らず、質問させて頂きました。 例えば、html上に <textarea name="sample" cols="20" rows="4"></textarea> といったフォームを持った時のpost.js側の処理が判らないのです。 アドバイスのほど頂戴出来たら幸いです。
お礼
talooさん お忙しい中でのご回答をありがとうございます。 PHPのようにサーバ側で処理させることになれてしまうと、感覚的にも「慣れ」が必要ですね。 ありがとうございました。