ホームページ >バックエンド開発 >PHPチュートリアル >PHPでフロントエンドからJSONデータを受け取る方法

PHPでフロントエンドからJSONデータを受け取る方法

WBOY
WBOYオリジナル
2016-06-23 14:13:302180ブラウズ

PHP JSON フロントエンド

フロントエンドは JQ を使用して、フィールド名と値の形式のキーと値のペアを持つ JSON 形式の文字列を生成し、トランスコード後、処理のためにバックグラウンドの PHP に送信されます
コードは次のとおりです。 follow
	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);	    }       });


バックグラウンドはPHPを使用して accept
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 ;

現在、受信したコンテンツは文字列であり、json_decode を使用して配列に変換できないという状況です



どのように処理する必要がありますか

ディスカッションに返信(解決策)

ポップアップ ボックスに URL パラメーター文字列があることに気づきませんでしたか?
ajax の type: "post"
その後、$_POST を使用できます

json_data は次のように記述できます: json_data="emp_id="+emp_id+"&action_type="+action_type; $_POST['emp_id'] を使用して渡された値を取得します

あなたは jq が精神薄弱だと思います



json_data は次のように記述できます: json_data="emp_id="+emp_id+"&action_type="+action_type;バックエンドで $_POST['emp_id'] のようなメソッドを使用して、渡された値を取得します

ポップアップ ボックスに URL パラメーター文字列があることに気づきませんでしたか?

ajax の type: "post" なので、$_POST を使用するだけです
なぜこのようなデータを受け取るのかわかりません。JSON データを受け取り、それを配列に変換し、配列を使用して生成したいと考えています。 SQL ステートメントにフィールドが多すぎます。

問題は、パラメータを渡す方法を使用するだけで解決されます。 ..

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。