2011-12-09 10 views
0

我收到以下錯誤信息:僅在某些PHP文件中,MySQL的客戶端編碼錯誤?

Warning: mysql_connect() [function.mysql-connect]: 
[2002] �Ώۂ̃R���s���[�^�ɂ����ċ��ۂ��ꂽ���߁A�ڑ��ł��܂����ł����B 
(trying to connect via tcp://localhost:3306) in \includes\connect_to_mysql.php 
on line 16 

Here's a permanent link to the connect script: http://pastebin.com/zudvxuZX

正如您所看到的,有些奇怪的字符正在輸出。我將編碼更改爲UTF-8,並且我也嘗試ISO-2022-JP,因爲我的操作系統語言是日語。錯誤消息看起來一樣。

那麼,我在另一頁上使用這個相同的連接腳本。它是完全一樣的,它的工作原理。所以,我在想:爲什麼在一個php文件中引用時會失敗,而在另一個php文件中引用時不會失敗?

是否有另一個地方可以查看此錯誤?或者是否有人知道我現在可以看到它正在輸出的完整錯誤,而沒有這些不尋常的字符?或者,有人能告訴我爲什麼連接腳本可能在一個位置而不是另一個位置失敗?這裏是位置:

工作:csite/includes/connect_to_mysql.php 不工作:dsite/includes/connect_to_mysql.php

我也通過引用相同的文件的connect_to_mysql.php腳本在不同的位置:

工作:csite/js/ajaxvalidate.js 不工作:dsite/js/ajaxvalidate.js

我是使用不同的index.php文件,雖然:

工作:csite/index.php 不工作:dsite/index.php

我也連接到同一個數據庫與兩個索引文件。

工作:$db_name = "ddata"; 不工作:$db_name = "ddata";

+0

編碼被明確/不同地設置?我相信這是一個「全球」的設置。查找「mysql_set_charset」或「SET NAMES」,也許?我認爲它可以用'mysql_client_encoding'查看,但我甚至不使用PHP :-) – 2011-12-09 03:12:40

+0

我沒有設置mysql字符集。我只用了這行代碼:''。但是我記得在創建數據庫時將字符集設置爲utf-8。 –

+0

兩個php腳本在同一個目錄下嗎?他們是否使用相同的內容編碼發送到您的瀏覽器(檢查與您的網頁一起發送的標題)?如果你搗鼓你的瀏覽器的編碼,你可以閱讀它嗎?如果服務器設置字符集,那麼元標記通常會被瀏覽器忽略。 – jswolf19

回答

1

MySQL site

錯誤()無法連接到...通常意味着沒有 MySQL服務器運行或嘗試連接到 服務器時使用不正確的 Unix套接字文件名或TCP/IP端口號。您還應該檢查您正在使用的TCP/IP端口 是否未被防火牆或端口阻止服務阻止。

+0

但是爲什麼亂碼呢? – 2011-12-09 03:17:51

+0

哦,是啊!我把它關掉了! –

+0

而解決方案的工作。當網站允許我時,我會接受。謝謝你,先生。 –

相關問題