データベースに正常に接続できましたが、データを印刷しようとしましたが、ブラウザーに「接続が成功しました」という行しか表示されません。以下は私のコードです:mysqlデータベースに接続しましたが、データを印刷できません
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
$db=mysqli_connect("host","root","pass","dbase");
if (!$db) {
echo "Error: Unable to connect to MySQL." . PHP_EOL;
echo "Debugging errno: " . mysqli_connect_errno() . PHP_EOL;
echo "Debugging error: " . mysqli_connect_error() . PHP_EOL;
exit;
}
echo "Connected successfully";
$sql = "SELECT username FROM students";
$result = $db->query($sql);
if ($result->num_rows > 0) {
// output data of each row
while($row = $result->fetch_assoc()) {
echo "username: " . $row["username"]. "<br>";
}
} else {
echo "0 results";
}
$db->close();
?>
SELinuxがApache Webサーバーによって実行されるPHPスクリプトからのリモート接続をブロックしていたという問題がありました。 ターミナルのsetsebool -P httpd_can_network_connect = 1がこのトリックを行いました。
PHPエラーログには何がありますか? –
シンプル:データベースを選択しませんでした。間違った変数 '$ conn'を' $ db'として使っています。 –
バグに問題がある場合、なぜ '@'でエラーメッセージを表示しないのですか?そのようなメッセージが役に立ちそうですね。 – Tim