[請益] session變數可以存中文嗎

看板PHP作者 (ibxp)時間15年前 (2009/08/08 19:08), 編輯推噓3(3015)
留言18則, 6人參與, 最新討論串1/1
比如說像這樣 $_SESSION['nickname'] = $row2['nickname']; 想把資料庫抓出來的綽號存給session使用 這樣就可以使用者登入的時候 介面用綽號跟他打招呼 結果發現我用utf8中文 之後把session變數印出來的時候都是問號-> "??" 是不能使用中文的意思嘛 還是我只能再到資料庫中抓出來用呢? ------------------------------------------- 剛剛發現主要問題出來了= = 因為我直接印$row2['nickname']也是問號 結果我發現資料庫中的資料是錯誤的 如果我用.sql新增資料 那他編碼就不是用utf8 如果用我做的新增頁面php 編碼就是utf8 那我是要對.sql命令中做修改嗎? 該怎麼做 囧 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.98.101

08/08 19:21, , 1F
.sql 先改成 utf8 編碼在丟進去~
08/08 19:21, 1F

08/08 21:51, , 2F
可以存中文,妳會顯示錯誤是其他編碼沒弄好
08/08 21:51, 2F

08/08 22:52, , 3F
我用NODPAD++把.SQL改成UTF8了 一樣沒用 囧
08/08 22:52, 3F

08/08 22:56, , 4F
參考 #1APAFp19 看看..
08/08 22:56, 4F

08/08 23:29, , 5F
用iconv()看看
08/08 23:29, 5F

08/09 05:36, , 6F
.sql前面加set names utf8
08/09 05:36, 6F

08/09 20:45, , 7F
我參考過以上的文章 我自己試過是還是一樣 自己
08/09 20:45, 7F

08/09 20:45, , 8F
也覺得很神奇 發現用.sql新增的東西 跟在.php裡面
08/09 20:45, 8F

08/09 20:46, , 9F
insert 出來的編碼竟然不一樣@~@
08/09 20:46, 9F

08/10 01:31, , 10F
有人有解嗎 同樣是insert@@ 還是我自己在研究看看
08/10 01:31, 10F

08/10 06:45, , 11F
如果你的程式有set names, .sql就要加
08/10 06:45, 11F

08/10 06:46, , 12F
沒有就要返過來 一切看情況 可能要加latin1之類的
08/10 06:46, 12F

08/10 06:46, , 13F
要看你的設定 同樣的程式和內容 有/沒有set names
08/10 06:46, 13F

08/10 06:47, , 14F
差別也是一個會亂碼一個不會
08/10 06:47, 14F

08/10 06:47, , 15F
set names要插對地方 可能要在use之後
08/10 06:47, 15F

08/10 06:48, , 16F
另外.sql裡面有一些跟編碼相關的syntax 可以改一改
08/10 06:48, 16F

08/10 06:48, , 17F
或直接砍掉..
08/10 06:48, 17F

08/10 06:48, , 18F
記得備份就是了
08/10 06:48, 18F
文章代碼(AID): #1AVLolAE (PHP)