ホームページ >バックエンド開発 >PHPチュートリアル >PHPでフロントエンドからJSONデータを受け取る方法
PHP JSON フロントエンド
フロントエンドは JQ を使用して、フィールド名と値の形式のキーと値のペアを持つ JSON 形式の文字列を生成し、トランスコード後、処理のためにバックグラウンドの PHP に送信されますjson_data+="\"emp_id\":\""+emp_id+"\",\"action_type\":\""+action_type+"\"})" // $("#emp_no_id").val(json_data); var json_data1=eval(json_data); // var json_data1=json_data;// $.each(json_data1,function(item,value){// alert(item+value);// }); $.ajax({ type: "post",//使用post方法访问后台 dataType: "text",//返回json格式的数据 url: "updata_emp.php", //要访问的后台地址 data:json_data1, ontentType:'utf8', async:false, success: function(msg){//msg为返回的数据,在这里做数据绑定 var arr=msg; alert(msg); } });
require '.\require\db_set.php';if (!empty($GLOBALS['HTTP_RAW_POST_DATA'])){ $command = isset($GLOBALS['HTTP_RAW_POST_DATA']) ? $GLOBALS['HTTP_RAW_POST_DATA'] : file_get_contents("php://input"); $j =json_decode( $command,true);//true,转化成数组}echo $j ;
ポップアップ ボックスに URL パラメーター文字列があることに気づきませんでしたか?
ajax の type: "post"
その後、$_POST を使用できます
あなたは jq が精神薄弱だと思います
json_data は次のように記述できます: json_data="emp_id="+emp_id+"&action_type="+action_type;バックエンドで $_POST['emp_id'] のようなメソッドを使用して、渡された値を取得します
ajax の type: "post" なので、$_POST を使用するだけです
なぜこのようなデータを受け取るのかわかりません。JSON データを受け取り、それを配列に変換し、配列を使用して生成したいと考えています。 SQL ステートメントにフィールドが多すぎます。
問題は、パラメータを渡す方法を使用するだけで解決されます。 ..