2013-03-20 104 views
4

我對web dev相當陌生,我需要幫助來找出問題所在。我安裝了MySQL 5.6.10,我被授予了一項任務來更新一個網站的src,該網站目前在過去5年中的生活。沒有任何代碼已經改變,並且適用於其他開發者本地機器。服務器運行5.0.51b,我只是降級到5.5.30,試圖讓語法錯誤消失。錯誤是SET OPTION SQL_BIG_SELECTS = 1在某個版本中不推薦使用SET SQL_BIG_SELECTS。由於服務器運行的版本,我無法更改語法。所以我選擇將版本降到5.5.30。警告:mysql_select_db()訪問被拒絕用戶''@'localhost'(使用密碼:否)

我的關係每況愈下之後的問題是:

Warning: mysql_select_db() [function.mysql-select-db]: Access denied for user 
''@'localhost' (using password: NO) in C:\Program Files (x86)\Apache Software 
Foundation\Apache2.2\htdocs\****\src\www\include\func\func.db.php on line 47 

我使用MySQL工作臺爲我連接沒有連接或用戶與他們有關聯的密碼。我有另一個不在live的項目,它可以從localhost正常工作。我的虛擬主機和主機文件都具有適當的語法,可以正常工作(通過其他項目進行驗證)。這一切都正常工作,並能夠通過虛擬主機提出的頁面昨天很好。我從來沒有任何關於如何設置拉索引頁的問題。唯一的問題是MySQL版本問題。我能做些什麼來解決這個問題?我已經嘗試在工作臺中重新創建連接,甚至刪除所有實例並重新創建它們。我很難過。任何幫助將不勝感激。

+0

並使用其他項目的憑據? – ITroubs 2013-03-20 18:13:52

+0

您的登錄腳本仍可訪問嗎? – advermark 2013-03-20 18:14:24

+0

@Johan你說的是警告的錯誤塊嗎?這是一個單行錯誤。我應該打破這個了嗎?另外,我真的不認爲你的評論是有幫助的。不需要粗魯,imo。 – ralliart2004 2013-03-20 18:30:27

回答

1

在你的錯誤仔細觀察,你可以看到,它告訴你什麼是錯的(通常是什麼樣的錯誤報告是):

''@'localhost' 
^^ 
:在

Access denied for user 
''@'localhost' (using password: NO) 

尋找具體

您會看到沒有指定用戶。您需要指定您希望連接的用戶。

mysql_connect("HOST","USER","PASSWORD") 

mysql_select_db調用之前。

MySQL Connect & MySQL Select DB

注意:爲MySQL_ *功能已被棄用,不要升級到PHP 5.5。我這樣說,因爲你不想改變任何代碼。

+0

謝謝。我注意到它也是空白的,並試圖找出它將用戶從哪裏拉出來。我假設它來自y工作臺。我有一個用戶的數據庫設置的連接,與我的config.php中爲用戶定義的用戶相同。也許我需要研究如何爲連接配置工作臺並從中進行處理。有什麼建議? – ralliart2004 2013-03-20 18:42:54

+0

@DanielVernon我對工作臺並不瞭解太多,但在選擇一個數據庫(最好使用'mysql_connect或die()')並確保[mysql_error](http:// php達網絡/手動/ EN/function.mysql-error.php)。你的錯誤說它發生在選擇分貝。另外,如果未指定,如果未指定,'mysql _ \ *'命令將使用上次打開的連接 – UnholyRanger 2013-03-20 18:49:52

4

你可以看到這個錯誤,因爲你沒有正確連接你的mysql數據庫。

mysql_connect("HOST","USER","PASSWORD") 

確保主機,用戶名和密碼是corrent

+0

你在說我的工作臺嗎? – ralliart2004 2013-03-20 18:32:04

+1

我在說你的錯誤。一般來說,這種類型的錯誤來,因爲你沒有正確配置您的連接 – 2013-03-20 18:36:29

1

從我在這已經返回的錯誤我看到,你沒有通過連接一個用戶名用於連接到MySQL。

2

MySQL是你升級的唯一東西嗎?任何你升級PHP的機會,現在不再有register_globals?如果你把它關掉了,而你的同事開始了,這可以解釋你所看到的差異。

http://php.net/manual/en/security.globals.php

+0

不,我沒有改變我的PHP版本。我確實必須將ereg_replace更新爲preg_replace,併爲模式添加分隔符。 – ralliart2004 2013-03-20 18:28:03

相關問題