2016-11-26 8 views
1

私はJavaScriptで以下を使用しています:
jQuery.post("cmssave.php" , html_to_send , done_edit() , "html")PHPでjqueryの投稿からデータにアクセスするには?

そして、PHP側の私が使用してポストされたデータを取得しようとしている:
$data = $_POST['somevar']

問題がある(私は仮定)私は使用されているポスト変数を見つけることができません。
私はvar_dump($_POST)
を行うと、私は正確に(私のログで)入手:, referer: http://blablabal
しかし、私が使用している場合:print_r($_REQUEST, true)
私が送信されたすべての私のhtmlを参照してください。 私は正しいデータを得るために以下を使ってみました:
$_POST , $_POST[''] , $_POST[0] , $_POST["data"] , $_POST['html_to_send']
しかし、私は何も得られません。私は何かを見逃しているのですか、何とかその変数をjavascriptに割り当てる必要がありますか?そうだとすれば、どうすればいいのですか?

+0

** html_to_send **の値が何ですか? – Berger

+0

@Bergerそれは 'document.getElementsByTagName( 'html')[0] .innerHTML' – linuxuser42

答えて

0

あなたはこのようにjqueryのに使用したいポスト変数を定義することができます。

さらに
var data = { 
    somevar: 'my post value' 
} 
jQuery.post("cmssave.php" , data, done_edit , "html"); 

あなたは括弧なしで成功-機能(done_edit)をASSINGにしたいかもしれませんが、そうでなければ、成功の関数を呼び出してしまいますそれは戻り値です。

そしてPHPで、あなたはこのように値を取得する:

$data = $_POST['somevar']; 
echo $data; 
+0

あなたの例では、私は実際に' somevar:html_to_send'をしなければなりません。それは有効ですか?私はそれを試して、私はまったく同じ結果を得ています。 html_to_sendは実際には 'document.getElementsByTagName( 'html')[0] .innerHTML'です。問題がある場合は、 – linuxuser42

+0

リクエストが送信されたことを確信していますか?あなたのjs開発ツールのjavascriptエラーをチェックしてください –

+0

何が起こったのかまだ分かりませんが、明らかに私が 'file_get_contents(" php:// input ")を使うとデータを取得します。 '$ _POST ['somevar'};の代わりに動作します。 – linuxuser42

関連する問題