作者duo3410 (腳男)
看板PHP
標題[請益] header傳get值小問題
時間Mon Apr 8 15:17:05 2013
最近在用header傳值時發生一些問題
以下是程式碼
$get_str = "";
$i = true;
while(list($key, $val) = each($_SESSION))
{
if($i){
$i = FALSE;
}
else
{
$get_str .= "&";
}
$post_str .= "$key=".rawurlencode($val);
}
header( 'Location:
http://xxx.xxx.xxx.xxx/test3.asp?'.$get_str);
當我以header重新導向到test3.asp後
連結上的中文又從rawurlencode編碼後的urlcode轉變回中文了 囧rz
而asp在解讀get來的中文時又會變為亂碼
之前也試過用curl來做看看
但是因為asp端要做session的儲存動作
用curl後asp存的session好像不是Client端
所以在Client端也無法取出session的資料
而又因為asp伺服器我沒有權限加裝soap sdk
請問像這種情況我該怎麼解決呢
還是有別的方法可以傳值給asp端呢
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.130.128.171
1F:推 LPH66:加 header("Content-Type: text/html; charset=xxx"); 試試 04/08 16:58
2F:→ LPH66:(也就是指定網頁的編碼, 其中 xxx 換成你網頁的實際編碼) 04/08 16:58
3F:→ duo3410:UTF-8或big5都一樣呢 因為這問題主要是asp抓get資訊時的 04/08 17:30
4F:→ duo3410:編碼問題 asp取get值的時候好像沒辦法直接抓中文 04/08 17:33
5F:推 LPH66:這樣的話就我來看有兩個方向可以試 04/08 22:23
6F:→ LPH66:一是看 asp 要怎麼吃中文再照樣讓 php 輸出連結 04/08 22:23
7F:→ LPH66:二是看能不能讓 asp 吃中文 04/08 22:23
8F:→ duo3410:1的方法失敗了(上面就是失敗範例) 正在找2的方法 04/09 09:13
最後在ASP端加入
<%@ CODEPAGE=65001 %>
<% Option Explicit %>
<% Response.CodePage=65001 %>
<% Response.Charset="UTF-8" %>
解析編碼就搞定了...
原來問題在ASP上 囧rz
※ 編輯: duo3410 來自: 220.130.128.171 (04/09 11:33)
9F:→ MOONRAKER:老的ASP在這種地方很糟糕 04/09 11:53