ホームページ > バックエンド開発 > PHPの問題 > PHP が文字化けしたポストパラメータを渡した場合の対処方法

PHP が文字化けしたポストパラメータを渡した場合の対処方法

藏色散人
リリース: 2023-03-17 11:00:02
オリジナル
1680 人が閲覧しました

php によって渡される文字化けした post パラメータの解決策: 1. 対応するソース コード ファイルを開きます; 2. "$_POST["pro_name"]" を見つけます; 3. "header("Content-Type:text" を変更します) / html;charset=utf8");" を "echo'';" に変更できます。

PHP が文字化けしたポストパラメータを渡した場合の対処方法

このチュートリアルの動作環境: Windows 7 システム、PHP バージョン 8.1、Dell G3 コンピューター。

PHP が文字化けした post パラメータを渡したらどうすればよいですか?

問題の説明:

PHP $_POST が中国語の文字化けを送信する

html:
<form action="__APP__/ShoppingCart/add" method="POST">
<br/><b>{$pro_name}</b><br/><br/>
价格:¥{$pro_price}<br/><br/>
已售出:{$pro_sale}件
数量<input type="text" size="2" name="pro_num" value="1"/><input type="submit" value="加入购物车" />
<input type="hidden" name="pro_id" value="{$pro_id}" />
<input type="hidden" name="pro_name" value="{$pro_name}" />
<input type="hidden" name="pro_price" value="{$pro_price}" />
</form>
action:
public function add(){
$user = session("user_name");
if(session("user_name")){
header("Content-Type:text/html;charset=utf8");
request.setCharacterEncoding("UTF-8");
$common = D("Common");
$data["user_id"] = $user[0]["user_id"];
$data["user_name"] = $user[0]["user_name"];
$data["pro_id"] = $_POST["pro_id"];
$data["pro_name"] = $_POST["pro_name"];
$data["pro_price"] = $_POST["pro_price"];
$data["pro_num"] = $_POST["pro_num"];
$data["pro_total"] = $_POST["pro_num"]*$_POST["pro_price"];
dump($data);
echo $data["pro_name"];
}
}
ログイン後にコピー

受信した $_POST["pro_name"] が文字化けしているのはなぜですか?ページのソース コードを確認しましたが、隠しフィールドは文字化けしていませんでした。

解決策:

header("Content-Type:text/html;charset=utf8");
ログイン後にコピー

echo &#39;<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">&#39;;
ログイン後にコピー

に変更されます。 推奨される調査: " PHP ビデオ チュートリアル >>

以上がPHP が文字化けしたポストパラメータを渡した場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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