2016-06-29 10 views
-2

私はこの部分を変更し、json_encodejson_encodeの使い方は?

を使用したいこのコードが動作しているが、私はjson_encode

<?php 
    require_once('person_class.php'); 
    $person = new Person_class(); 

    $first_name = addslashes ($_POST['first_name']); 
    $last_name = addslashes ($_POST['last_name']); 
    $birthday = addslashes ($_POST['birthday']); 
    $gender = addslashes ($_POST['gender']); 

    $person_id = $person->addPerson($first_name, $last_name, $birthday, $gender); 

    echo " 
     { \"status\"  : \"1\", 
      \"error\"  : \"0\", 
      \"person_id\" : \"$person_id\", 
      \"first_name\" : \"$first_name\", 
      \"last_name\" : \"$last_name\", 
      \"birthday\" : \"$birthday\", 
      \"gender\"  : \"$gender\" 
     }"; 
?> 

を使用する必要があるが、 " {\" ステータス\エコー」:\ "1 \"、 \ "first_name \":\ "$ first_name \"、 \ "last_name \":\ "エラー\":\ "0 \"、 \ "person_id \":\ "$ person_id \ $ last_name \ "、 \" birthday \ ":\" $ birthday \ "、 \" gender \ ":\" $ gender \ " }";

+1

あなたの質問は不明です。希望の結果を投稿できますか? –

+1

なぜ最初に$ person_idをエンコードして '$ json'変数に代入したら、' $ json' varを再宣言しますか? –

答えて

-1

あなたは

$data=array(); 
     $data['first_name'] = $_POST['first_name']; 
     $data['last_name'] = $_POST['last_name']; 
     $data['birthday'] = $_POST['birthday']; 
     $data['gender'] = $_POST['gender']; 

echo json_encode($data); 

のような配列内のポストの値を保存し、後の値を使用してJSON文字列を構築する必要があり、私はあなたにjson_encode機能のためのJSON文字列

+0

これはOPが尋ねたものですか? –

+0

astyさんの質問は明確ではありません。astyがjsonの文字列を望むのであれば、私のコードを使うことができます。 –

+0

明確でない場合は、詳細をお尋ねください。 –

1

を与える、あなたがする必要がありますまず配列を作成し、その配列に関数を渡します。例として 、より多くの詳細に関しては

<?php 
$arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); 
echo json_encode($arr); 
?> 

、私はあなたがjson_encodeを使用したいあなたが作成した任意の配列を発見していないあなたのコードではHere

。たとえば、コードサンプル$person_idでは、変数が通常の変数であるか、配列であるかが明確ではありません。

+0

オプションも追加できます:http://php.net/manual/ja/json.constants.php;) – Jer