2014-03-06 24 views
0

我使用phpmyadmin進行了檢查,並且我試圖執行的查詢正在工作。無法從PHP連接到服務器MySQL服務器,但它在phpmyadmin中有效

$user =到用戶名登錄。我看到它是因爲我回應它。所以我不認爲這是錯誤。

我得到的錯誤是

> PHP Warning: mysql_query(): Can't connect to local MySQL server through socket  
'/var/run/mysqld/mysqld.sock' (2) in 
/hermes/bosweb/web161/b1615/ipg.jmdev/nmc/admin/user.php on line 14 

> PHP Warning: mysql_query(): A link to the server could not be established in 
/hermes/bosweb/web161/b1615/ipg.jmdev/nmc/admin/user.php on line 14 

14號線是我的查詢線(如下圖),這是一段代碼,不工作...

這裏是我的代碼:

$host="link"; // Host name 
$username="username"; // Mysql username 
$password="password"; // Mysql password 
$db_name="nmc"; // Database name 
$tbl_name="account"; // Table name 

session_start(); 
$user = $_SESSION['myusername']; 
echo $user . '<br>'; 
//[Working on PHPMyAdmin](SELECT `role` FROM `account` WHERE `username`='jean8mathieu') (Working) 
$result = mysql_query("SELECT `role` FROM `account` WHERE `username`='$user'");//I would like to make this work... 
//$result = mysql_query("SELECT role FROM account WHERE username='jean8mathieu'"); /I try this line and did not ever work... 

if (!$result) { 
    echo 'Could not run query: ' . mysql_error(); 
    exit; 
} 
$row = mysql_fetch_row($result); 
echo $row[0]; 

我的問題是不要在服務器上連接它的查詢。我能夠連接到它只是我的查詢似乎並不工作...它爲我所有的其他頁面工作...

+0

「服務器的鏈接不能成立「你的密碼是否正確? –

+3

數據庫連接在哪裏?看來你只是宣佈數據庫的詳細信息 – Fabio

+3

而在sitenote上:請不要再使用mysql擴展。它被正式棄用。您應該使用[PDO](http://www.php.net/PDO)或[MySQLi](http://www.php.net/MySQLi)來代替。 – Tularis

回答

4

請不要再使用任何mysql _ *()函數,因爲舊的MySQL庫是 已棄用(達到使用期限)。

審查MySQLi,這兩種選擇做的MySQL相關的東西的PDOthis answer並選擇一個。

這就是說...

你需要的所有的先告訴PHP如何建立與MySQL服務器using mysql_connect()的連接:

// we connect to example.com and port 3307 
$link = mysql_connect('example.com:3307', 'mysql_user', 'mysql_password'); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_close($link); 

// we connect to localhost at port 3307 
$link = mysql_connect('127.0.0.1:3307', 'mysql_user', 'mysql_password'); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_close($link); 
+2

請請解釋他mysql_ *已棄用,他應該開始學習其他東西 – Fabio

+2

另外** from手動** - *「此擴展從PHP 5.5.0開始已被棄用,並且將來會被刪除。」* – Phil

+1

*「嘿,這裏是你如何使用'eval'做到這一點......但是不要使用'eval'!「* - 看看看起來有多愚蠢 – Phil