ホームページ > php教程 > PHP开发 > PHP と JavaScript 間のデータ転送

PHP と JavaScript 間のデータ転送

高洛峰
リリース: 2016-11-28 14:04:56
オリジナル
1590 人が閲覧しました

Web 開発では、PHP と JavaScript 間の通信が頻繁に必要になります。以下に例を示します。

JavaScript 側:

必ず xmlHttp.setRequestHeader を設定してください。そうしないと、PHP に渡されるパラメータが null になります (43 行目)。 36行目がハイライトです。

<script type="text/javascript">
function GetJson() 
{
    var xmlHttp;
    try
    {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    }
    catch (e) 
    {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        }
        catch (e) 
        {
            try {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            }
            catch (e) {
                alert("您的浏览器不支持AJAX!");
                    return false;
            }
        }
    }
     
    xmlHttp.onreadystatechange = function() 
    {
        if (xmlHttp.readyState == 4) 
        {
            //alert(xmlHttp.responseText);
            var str = xmlHttp.responseText;
            document.getElementById(&#39;show&#39;).innerHTML +=str;
            //alert(str);
            var obj = eval(&#39;(&#39;+ xmlHttp.responseText +&#39;)&#39;);
            //var obj = eval(({"id":"123","name":"elar","age":"21"}));
            alert(obj.name);
        }
    }
    var data = "id=123";
    xmlHttp.open("POST", "testJson.php", true);
    xmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
    xmlHttp.send("id=123");
}
</script>
<input type="button" onclick="GetJson()" value="按我!"/>
<hr />
<div id="show"></div>
ログイン後にコピー

PHP 側 [testJson.php]:

php ファイルはクリーンである必要があり、 タグの外側に他のタグがあってはなりません。そうしないと、eval 関数で解析できません。

<?php 
$res[&#39;id&#39;] = $_POST[&#39;id&#39;];
$res[&#39;name&#39;] = "elar";
$res[&#39;age&#39;] = "21";
$response = "hello this is response".$_POST[&#39;id&#39;];
echo json_encode($res);
?>
ログイン後にコピー

概要:

js は、xmlHttp.send("id=123") を使用して PHP にデータを送信します。

PHP は、echo json_encode($res) を使用します。変数 $res の構築は JSON 仕様に準拠する必要があります)

js PHP によって送信された JSON 形式のデータを解析するには、var obj = eval('('+ xmlHttp.responseText +')');


関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
PHP 拡張子 intl
から 1970-01-01 08:00:00
0
0
0
phpのデータ取得?
から 1970-01-01 08:00:00
0
0
0
PHP GET エラー レポート
から 1970-01-01 08:00:00
0
0
0
phpを上手に学ぶ方法
から 1970-01-01 08:00:00
0
0
0
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート