我試圖在亞馬遜上的虛擬機上設置PHP和mySQL。我試着按照這些指示,並沒有得到任何錯誤信息。一切似乎都很好。我做了一個測試PHP文件,它像一個魅力。然後,我嘗試從我新建立的數據庫中取回某些東西...然後我得到一個空白頁。我的PHP頁面沒有從MySQL數據庫中檢索任何東西
<?php
$conn = new mysqli('localhost', '[DB NAME]_user', '[USER PASSWORD]', '[DB NAME]', '');
$result = $conn->query("SELECT message FROM test;");
$row = $result->fetch_assoc();
echo $row['message'];
?>
關於我能做什麼來檢查它出錯的任何想法?任何我應該檢查在終端,看看數據庫是否真的返回任何值?
任何幫助表示讚賞。
附加信息:
我試圖凱斯圖蒂斯的建議。
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
$conn = new mysqli('localhost', '[USER]', '[USER PASSWORD]', '[DB NAME]');
if ($conn->connect_errno) {
die($conn->connect_error);
}
if (!($result = $conn->query("SELECT message FROM test"))) {
die($conn->error);
}
while ($row = $result->fetch_assoc()) {
print_r($row['message']);
}
它返回從$行[ '消息']字符串。沒有錯誤消息。
然後我看到
$conn = new mysqli('localhost', '[USER]', '[USER PASSWORD]', '[DB NAME]');
是不一樣的我最初
$conn = new mysqli('localhost', '[DB NAME]_user', '[USER PASSWORD]', '[DB NAME]', '');
所以我改變了行我最初一個與「到底」。現在我收到一條錯誤消息:
警告:mysqli :: mysqli()期望參數5很長,字符串在/var/www/html/index.php在第5行給出警告:mysqli :: query ():無法在第10行的/var/www/html/index.php中獲取mysqli警告:main():無法在第11行的/var/www/html/index.php中獲取mysqli
爲什麼?
是你的嗎?你的數據庫裏有數據嗎? – Rugal
你可以嘗試做很多事情來獲得某種類型的錯誤消息,即:'error_reporting(E_ALL); ini_set(「display_errors」,1);' 和最後但並非最不重要的嘗試 'echo $ conn-> error;' 檢查mysql是否顯示任何消息,或者您的mysql只是有問題 –
因爲該參數是本質上是一個MySQL端口,如果留空,它將被默認(通常爲3306)替換,因此可以使用3306(或者任何你的mysql端口),或者將其保留爲空。只要記住''與空/空白不同,你所做的就是有效地試圖明確地將它設置爲''這是錯誤的。 –