2016-08-10 17 views
-2

私はposts.phpと呼ばれるPHPページを持っています。このページはpostsというデータベーステーブルのselect allにちょうどあり、それらを表示しています。ページの下に私はpostという名前のテキストエリアを持っています。送信ボタンを押すと、AJAXスクリプトはテキストエリアからinsert.phpというページにテキストを送信します。このinsert.phpは、提出されたテキストを取得し、postsテーブルに挿入します。どうすればいいですか?postsテーブルに投稿を挿入したときにposts.phpをアップロードするにはどうすればよいですか。変数をPHPからAJAXに送信

: ユーザ123は、テキストエリアにメッセージを書き込みます。彼は提出ボタンを押す。 AJAXは投稿をinsert.phpに送信します。 Insert.phpは、投稿をpostsテーブルに挿入します。 Posts.phpにメッセージが表示されます。

+0

は、テキスト入力フィールドにページをしましたし、送信ボタンを、あなたが必要だということですユーザーが入力フィールドに値を書き留めてsubmitを押すと、値は投稿テーブルに配置され、フォームの下にも表示されます。私は正しい? – mmounirf

+0

2つのajaxリクエスト(データを挿入するためのもの(insert.php)とポーリング用のもの)を実装する必要があります。ポーリングに関する詳細はこちら[こちら](http://stackoverflow.com/questions/6835835/jquery-simple-pollingexample) – stweb

+0

これを達成するには2つの方法があります。 a)ページ上の投稿をリロードできるAJAX呼び出しを作成します。 AJAXが挿入を要求したら、ポストリフレッシュAJAX呼び出しを呼び出します。 b)insert.phpを呼び出すときにページを更新します。 –

答えて

0

非常に簡単にできます。ここにはの非常に単純なの例があります。あなたのposts.php、あなたのテーブルからSELECT件のデータで

// You have to pay attention to AJAX can only invite your file! 
if (!empty($_SERVER["HTTP_X_REQUESTED_WITH"]) && strtolower($_SERVER["HTTP_X_REQUESTED_WITH"]) == "xmlhttprequest") { 
    if (isset($_POST["postVar"])) { 
     $var = sanitize($_POST["postVar"]); // You need sanitize the data! 
     // Insert into your table... 
    } 
} 

insert.php

func.js

$(document).on("click", ".submitBtn", function() { 
    var textareaVal = $(".textarea").val(); 
    $.ajax({ 
     type: "POST", 
     url: "insert.php", 
     dataType: "text", 
     data: { postVar: textareaVal }, 
     success: function(data) { 
      $(".resultDiv").load("posts.php"); 
     } 
    }); 
}); 

が、データのみを選択し、「なしHTMLコンテナ "!あなたのJSファイルはresultDivボックスにこのデータをロードします。

+0

私の答えを見てください! –

0

あなたがAJAX経由でこれを実行する必要があるだろう、なぜ私は確かではないんだけど、私はあなたの質問から理解して何

$("#myForm").submit(function(event) { 
$.ajax({ 
     type: 'post', 
     url: '../insert.php' , 
     data: { value1: document.getElementById('textarea').value }, 
     success: function() { 
      alert("yay!"); 
     } 
}); 
}); 
関連する問題