2011-08-17 9 views
0

は、私はPHPはPHPの変数にHTMLフォームから受け取ることをJSONオブジェクトを変換する必要があります。私は2つのフォームを持っています。フォーム1は値を与え、フォーム2はそれらを送信します。私はJSONオブジェクト

-html--javascript function- 

var myObj = { 
    "username" : theUsername, 
    "name" : theName, 
    "surname" : theSurName, 
    "email" : theEmail, 
    "password" : thePass, 
    "confirmpass" : thePass2, 
    "dob" : theDate, 
    "gender" : theGender, 
    "age" : theAge 
}; 

var jsonstr=JSON.stringify(myObj); 
document.forms["form2"]["hide"].value = jsonstr; //form2 gets the whole string 

-php- // $ JSTR = $ _REQUEST [ "非表示"]のForm2にJSON文字列値を与える場所です。

//$newObj=JSON.parse(jstr)。

// $名= $ newObj.name。

これは私が試したものですが、それは私がHTMLでPOSTメソッドを使用

動作しません。 これをPHPの別の変数に戻すにはどうしたらいいですか?

+0

別々の変数?あなたは$ username、$ name、$ surname ...を意味しますか? –

+0

それはおそらく単なる言い回しの問題ですが、JSONオブジェクトになることはありません:JSONは* *文字列です。そのため、 'stringify()'メソッドがあります。 –

答えて

4

json_decode

json_decodeの結果は、あなたのjavascriptオブジェクトに存在したキーと値の連想配列です。見てみましょう。

あなたがPHPスクリプトに投稿した後、あなたが情報を取得する方法がわからない場合は、スーパーグローバル$_POSTを見てみましょう。あなたはしかし、それに慣れていない場合、私はデJSONから文字列インデックスは、次にPHPページ

var myObj = { 
    "username" : theUsername, 
    "name" : theName, 
    "surname" : theSurName, 
    "email" : theEmail, 
    "password" : thePass, 
    "confirmpass" : thePass2, 
    "dob" : theDate, 
    "gender" : theGender, 
    "age" : theAge 
} 

に送信するPHPの本を買って示唆または必要に応じていくつかのチュートリアル:)

0

トラフ読みます

extract($_POST); 

その後、あなたは変数$名、$姓、$の電子メールが表示されるはずです...

ソースhttp://php.net/extract

:PHPページで