從jsp頁面讀取資料庫 中文變成問號

2021-03-23 19:56:00 字數 2256 閱讀 5974

1樓:育知同創教育

從jsp頁面讀取資料庫操作mysql變成問號是因為編碼問題導致。

1.架設伺服器安裝mysql時的會讓你選擇一種編碼,如果這種編碼與你的網頁不一致,可能就會造成jsp頁面亂碼.

解決方案:如果安裝mysql的編碼已不能更改,很多朋友是購買虛擬主機建立**,無權更改mysql的安裝編碼,這一關我們可以跳過,因為只要後面的步聚正確,一樣能解決亂碼問題

2.在phpmyadmin或mysql-front等系統 建立資料庫時會讓你選擇一種編碼,如果這種編碼與你的網頁不一致,也有可能造成jsp頁面亂碼.

解決方案:修改資料庫編碼,如果是資料庫編碼不正確: 可以在phpmyadmin 執行如下命令:

alter database `test` default character set utf8 collate utf8_bin 。這個命令就是將test資料庫的編碼設為utf8

3.建立表時會讓你選擇一種編碼,如果這種編碼與你的網頁編碼不一致,也可能造成jsp頁面亂碼

解決方案:修改表的編碼:

alter table `category` default character set utf8 collate utf8_bin

這個命令就是將一個表category的編碼改為utf8

4.建立表時新增欄位是可以選擇編碼的,如果這種編碼與你的網頁編碼不一致,也可能造成jsp頁面亂碼

解決方案:修改欄位的編碼:

alter table `test` change `dd` `dd` varchar( 45 ) character set utf8 collate utf8_bin not null

這個命令就是將test表中 dd的欄位編碼改為utf8

5.使用者提交jsp頁面的編碼與顯示資料的jsp頁面編碼不一致,就肯定會造成jsp頁面亂碼.

解決方案:如果是這種情況容易解決,只需檢查一下頁面,修改原始檔的charset即可。如使用者輸入資料的jsp頁面是big5碼, 顯示使用者輸入的jsp頁面卻是gb2312,這種100%會造成jsp頁面亂碼

6.字符集不正確

解決方案:要注意:

1>.平時你在某些**看到的文字可能有幾種編碼, 如你看到一個繁體字,它有可能是big5編碼,也有 可能是utf-8編碼的,更有可能是gb碼的,沒錯,也就是說有簡體編碼的繁體字,也有繁體編碼的簡體字,一定要了解這一點.

2>.如果你是做一個簡體編碼的網頁,編碼定為gb2312,如果有香港和臺灣地區的訪客提交繁體的資訊,就可能會造成亂碼,解決方法就是(a)將**編碼設為utf-8,這樣可以相容世界上所有字元, (b)如果**已經運作了好久,已有很多舊資料,不能再更改簡體中文的設定,那麼建議將頁面的編碼設為gbk,gbk與gb2312的區別就在於:gbk能比gb2312顯示更多的字元,要顯示簡體碼的繁體字,就只能用gbk

7.jsp連線mysql資料庫語句指定的編碼不正確

解決方案:在jsp連線資料庫的語句中,帶上

但是千萬不要犯和我同樣的錯誤哦。

8.jsp頁面沒有指定資料提交的編碼,就會造成亂碼:

解決方案:這種亂碼的情況,只需在頁面開頭加上request.setcharacterencoding("gbk"); 指定提交的即可。

2樓:

1修改jsp頁面編碼為utf-8,如果不行就試試2

2檢視mysql中的資料是否已經是亂碼是的話 修改資料庫編碼

從mysql資料庫讀出的資料怎麼是問號(?)

3樓:千鋒教育

解決方案:

在**裡,在執行select語句之前,加上mysql_query("set names 'utf8'");

注意,mysql資料庫也要設定utf8,瀏覽器顯示和檔案型別都設定為utf-8

設定utf8原因:

utf-8(8-bit unicode transformation format)是一種針對unicode的可變長度字元編碼,又稱萬國碼。由ken thompson於2023年建立。現在已經標準化為rfc 3629。

utf-8用1到6個位元組編碼unicode字元。用在網頁上可以同一頁面顯示中文簡體繁體及其它語言(如英文,日文,韓文)。

4樓:

你的php設定的字的格式與資料庫不匹配:

可做如下工作:

- 在php中定義 charset=utf-8- 檢查資料庫的設定:同樣定義為utf-8

jsp頁面根據資料庫的值顯示div

原因是第一次執行的時候sq name,你取的是引數,從request裡面取的,但是第一次執行頁面內容是空的,你的sql肯定查不到任何內容,當你輸入內容後,回車再查,肯定是查到了,查到了才會走到while語句裡面,要直接輸入申請人查詢,你的sql語句就的改造,在where後面跟上 1 1 and,sq...

asp,如何從資料庫中讀取資料並將其賦值給label控制元件

sql mand sqlcmd new sql mand sqltext,sqlconn 這一行後面改一下 labname string.format cmd.executescalar sqlconn.close oracle資料庫,不同的資料庫,如何把表結構相同的資料從一個資料庫中匯入至另一個資...

各位大神jsp中從資料庫撒的值如何動態的繫結

這個不bai難啊。n1n2 依據這個,你查詢數 zhi據庫select name,value from table查詢出來後dao while rset.next 這個思路很簡單專才對,不應該想不屬出。把數復據存在 制session 然後迴圈在jsp上輸出 估計樓主是要寫二級聯動啥的 要動態改變資料...