2016-06-10 54 views
-1

我使用Mac上的甲基苯丙胺與localhost連接到數據庫,我可以連接到服務器成功,但問題是我無法連接到數據庫,我不知道在哪個查詢我的一部分會犯錯,因爲它只是一個行query.i也在這裏搜查堆棧溢出不同的解決方案,但他們不可能有幫助無法連接我的SQL

$username = 'root'; 
$password = 'root'; 
$host  = 'localhost'; 
$database = 'trendnow'; 
$link = mysqli_connect($host, $username, $password); 


if (!$link) { 
echo 'can not connect to the server'; 
} 
$db_selected = mysqli_select_db($database,$link); 
echo $db_selected; 
if (!$db_selected) { 


echo 'Can not connect to trend now '; 
} 
+5

使用'mysqli_connect($主機,$的用戶名,密碼$,$數據庫)'。此外,你得到什麼錯誤/輸出? –

+0

這個查詢用於連接數據庫還是隻連接到服務器? –

+0

多數民衆贊成票Fepippe @FelippeDuarte – RiggsFolly

回答

1

Felippe杜阿爾特是正確的。你想要連接的數據庫是什麼?

mysqli_connect("localhost","my_user","my_password","my_db"); 
  • 本地主機手段連接到該程序上運行的服務器。有時候人們會連接到位於非本地服務器上的數據庫,所以有時候這會成爲IP地址。
  • MY_DB是數據庫的名稱。所以如果你的數據庫被稱爲WebStore,你可能在數據庫上有一個名爲計算機的表。該網上商店將是數據庫的名稱,並且必須駐留在最後一節中,像這樣:mysqli_connect("localhost","my_user","my_password","WebStore");

這裏是一個教程,可以幫助。 http://www.w3schools.com/php/func_mysqli_connect.asp


得到一個有用的錯誤消息

與獨立的連接,如果有一個錯誤,它不會告訴你它是什麼的問題。謝天謝地,有幾種方法可以找出錯誤是什麼。

<?php  
$con = mysqli_connect("localhost","my_user","my_password","my_db"); 

//This will check if we were able to start up a connection using the above line 
if (mysqli_connect_errno()) 
{ 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
} 

// This is an example query. We will check if it failed, and if so, why it failed 
// Perform a query, check for error 
if (!mysqli_query($con,"INSERT INTO Persons (FirstName) VALUES ('Glenn')")) 
{ 
    echo("Error description: " . mysqli_error($con)); 
} 

?> 

http://www.w3schools.com/php/func_mysqli_error.asp

+0

我用這個查詢,但沒有發生,頁面保持空白 –

+0

其甚至不顯示任何錯誤 –

+0

我應該使用我的IP地址而不是本地主機? –

1

mysqli_connect需要4個參數。你在混合mysqlmysqli。也總是嘗試調試您的連接或查詢,如果它不起作用。庫MySQLi具有該功能,所以要檢查連接使用本

$link = mysqli_connect($host, $username, $password,$database) or print_r(mysqli_connect_error()); 

,並檢查查詢中使用此

$result = mysqli_query($link,"your query") or print_r(mysqli_error($link)); 
+0

這不完全正確。您可以將四個參數傳遞給connect函數,但是您也可以像OP一樣執行操作,並使用三個參數分別選擇一個數據庫 - 但OPs代碼中的參數順序錯誤。 – Qirel

0

添加

error_reporting(-1); 

看到代碼的第1行的錯誤。

0

你要離開的密碼爲空,如果你將使用root作爲用戶名