看板 PHP 關於我們 聯絡資訊
最近在用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
LPH66:加 header("Content-Type: text/html; charset=xxx"); 試試 04/08 16:58
LPH66:(也就是指定網頁的編碼, 其中 xxx 換成你網頁的實際編碼) 04/08 16:58
duo3410:UTF-8或big5都一樣呢 因為這問題主要是asp抓get資訊時的 04/08 17:30
duo3410:編碼問題 asp取get值的時候好像沒辦法直接抓中文 04/08 17:33
LPH66:這樣的話就我來看有兩個方向可以試 04/08 22:23
LPH66:一是看 asp 要怎麼吃中文再照樣讓 php 輸出連結 04/08 22:23
LPH66:二是看能不能讓 asp 吃中文 04/08 22:23
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)
MOONRAKER:老的ASP在這種地方很糟糕 04/09 11:53