2017-09-11 166 views
1

使用XAMPP的Im。並試圖將我的db_data轉儲到網頁上。錯誤消息是「調用未定義的函數mysql_connect」。我應該導入一些文件?如何連接到數據庫並從數據庫中檢索數據?

<?php 
$dbhost = 'localhost:3036'; 
$dbuser = 'root'; 
$dbpass = ''; 
$conn = mysql_connect($dbhost, $dbuser, $dbpass); 

if(! $conn) { 
    die('Could not connect: ' . mysql_error()); 
} 
$sql = 'SELECT * 
    FROM uam'; 

mysql_select_db('demo'); 
$retval = mysql_query($sql, $conn); 

if(! $retval) { 
    die('Could not get data: ' . mysql_error()); 
} 

while($row = mysql_fetch_array($retval, MYSQL_ASSOC)) { 
    echo "Tutorial ID :{$row['id']} <br> ". 
    "username: {$row['username']} <br> ". 
    "email: {$row['email']} <br> ". 
    "password : {$row['password']} <br> ". 
    "--------------------------------<br>"; 
} 
echo "Fetched data successfully\n"; 
mysql_close($conn); 
?> 

或者我應該讓我的代碼的變化?

+6

不要使用mysql函數。它是未定義的,因爲它已從PHP 7中刪除。請改用mysqli或PDO。 –

+0

@ Don'tPanic這應該是一個答案。 – Mark

+1

您還需要輸出一個密碼,不管是否加密。 – IsThisJavascript

回答

-1

,由於PHP不支持的mysql_connect 嘗試的新版本使用mysqli_connect

$dbhost = 'localhost:3036'; 
$dbuser = 'root'; 
$dbpass = ''; 
$dbname = 'demo'; 
$conn = mysqli_connect($dbhost, $dbuser, $dbpass, $dbname); 
+2

或者你可以/應該使用PDO。 –

+0

是的,我使用PDO,因爲它更多的保護埠,他想與mysqli_connect合作,所以我回答了這個 –

+1

不,他正在使用過時的API。你在做一個假設。 –

-1
 <?php 
    $dbhost = 'localhost:3306'; 
    $dbuser = 'root'; 
    $dbpass = ''; 
    $dbname = 'TUTORIALS'; 
    $conn = mysqli_connect($dbhost, $dbuser, $dbpass,$dbname); 

    if(! $conn) { 
     die('Could not connect: ' . mysqli_error()); 
    } 
    echo 'Connected successfully<br>'; 
    $sql = 'SELECT name FROM tutorials_inf'; 
    $result = mysqli_query($conn, $sql); 

    if (mysqli_num_rows($result) > 0) { 
     while($row = mysqli_fetch_assoc($result)) { 
      echo "Name: " . $row["name"]. "<br>"; 
     } 
    } else { 
     echo "0 results"; 
    } 
    mysqli_close($conn); 
    ?> 
1

避免使用MySQL的功能發生了,他們現在正在貶值,這就是爲什麼你 未定義的錯誤,其在PHP 7中也不支持。

通過將您的配置更改爲以下代碼來使用MySQLI函數

$dbhost = 'localhost:3036'; 
$dbuser = 'root'; 
$dbpass = ''; 
$dbname = 'dbname'; 

$conn = new mysqli($dbhost , $dbuser, $dbpass, $dbname); 

if(! $conn) { 
    die('Could not connect: ' . mysql_error()); 
} 
+0

謝謝你們。有效 –