我想将mysql数据库的数据显示到我的html页面,这是迄今为止我的代码。解析非英文字符时出错
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
$servername = "localhost";
$username = "root";
$password = "hello";
$dbname = "agita";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
$sql = "SELECT * FROM test";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0 results";
}
mysqli_close($conn);
?>
MySQL服务器启动并运行,并有我创建了由下面提到的用户名和密码访问的数据库agita。然而,PHP也没有告诉我什么是错误,也没有解析。它解析到第21行,并在“>”符号之后显示为HTML中的文本。它不包含大于号。
我在做什么错,我如何使PHP显示错误,以便我不会重复同样的错误。
P.S.I通过从计算机远程访问它并在bash中编码,从而在Linux环境中工作。
更新1:嘿家伙我有一个错误地没有注意到,该文件的扩展名不是PHP。现在,因为我已经把我得到这个在我的HTML“警告:mysqli_num_rows()期望参数1为mysqli_result,布尔在/var/www/html/index.php在第21行0结果”。什么做错了,以获得该错误?
更新2:嘿家伙我遇到了一个问题,现在解析非英文字符。我设置mysqli字符集“UTF-8”的代码
mysqli_set_charset($result,"UTF8");
但它似乎并没有工作。
如果你检查页面,你看到的一切吗? – Qirel
如果您查看源代码,您是否看到您的PHP?你有安装PHP吗?该文件是一个'.php'吗? – chris85
如果它是一个分析错误,那么你的'ini_set()'也不会被读取(因为PHP不能解析和读取文件)。检查错误日志,看看你是否有任何错误。 –