非常簡單的轉碼問題卻搞不定

edited 十月 2013 in PHP新手區
各位大大好

小弟在使用一套國外的 PHP 程式時其中他會將中文字直接帶入參數中
造成資料庫判讀有問題需要將其轉換
範例如下

錯誤
example.php?name=明星臉

正確
example.php?name=%E5%8D%8A%E7%B3%96


這個問題困擾好久~~
請問各位大大要如何改正呢 ?

感謝各位大大!

原始討論: http://twpug.net/x/modules/newbb/viewtopic.php?topic_id=1239

評論

  • edited 二月 2006
    babycar 寫道:
    各位大大好

    小弟在使用一套國外的 PHP 程式時其中他會將中文字直接帶入參數中
    造成資料庫判讀有問題需要將其轉換
    範例如下

    錯誤
    example.php?name=明星臉

    正確
    example.php?name=%E5%8D%8A%E7%B3%96


    這個問題困擾好久~~
    請問各位大大要如何改正呢 ?

    感謝各位大大!

    不是很了解你的意思

    不過如果是要把明星臉轉換成%E5%8D%8A%E7%B3%96
    可以參考看看htmlentities這個函式
    功能是將所有字元轉換成html編碼
  • edited 二月 2006
    $userinput = htmlentitles(urlencode("明星臉"));
    echo "<a href='modules?name=$userinput'>明星臉</a>";

    如果是分類的連結,我建議你寫到資料庫會比較好,然後直接抓id值
    這樣好管理又不會出錯...一點建議 ├151┤
  • edited 二月 2006
    是的 只是要這樣轉換而已
    htmlentities這個函式 我查詢了一下官方網站
    好像沒有可以轉成有百分比的這種耶

    大大可以簡單弄個範例嗎

    感恩!
  • CFCCFC
    edited 二月 2006
    用urlencode轉換成你要的編碼
    用urldecode把編碼轉回中文字

    echo urlencode("明星臉");
  • edited 二月 2006
    抱歉抱歉,說錯函式
    用urlencode才是正確的
    htmlentities是轉成html字串用的
  • CFCCFC
    edited 二月 2006
    <?php

    function encode_it($str){
    return urlencode($str);
    }

    function decode_it($str){
    return urldecode($str);
    }

    ?>

    這函式拿去用吧XD
    好爛Orz..
  • edited 二月 2006
    小弟使用大大提供的
    htmlentities

    已經解決問題 感謝各位大大!
Sign In or Register to comment.