Lösung für die von PHP übergebenen verstümmelten Beitragsparameter: 1. Öffnen Sie die entsprechende Quellcodedatei. 2. Suchen Sie nach „$_POST[“pro_name“]“; 3. Ändern Sie „header(“Content-Type:text/html;charset = utf8");" kann in "echo'';" geändert werden.
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, Dell G3-Computer.
Was soll ich tun, wenn PHP verstümmelte Post-Parameter übergibt?
Problembeschreibung:
PHP $_POST sendet verstümmelte chinesische Zeichen
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"]; } }
Warum ist der empfangene $_POST["pro_name"] verstümmelt? Ich habe den Quellcode der Seite überprüft und festgestellt, dass das versteckte Feld nicht verstümmelt ist. Lösung:
header("Content-Type:text/html;charset=utf8");
Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP verstümmelte Post-Parameter übergibt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!