Я работаю с PHP и MySQL. Мне нужно извлечь все строки из таблицы базы данных и отобразить в браузере в виде таблицы, но по какой-то причине отображается только первое поле в таблице, а другие поля не отображаются или не извлекаются из базы данных.
Вот мой код PHP.
<?php
include("DBConn.php");
$result = mysql_query("SELECT * FROM new_table");
if(!$result) {
die("Database query failed: " . mysql_error());
}
echo "<table>
<caption>Signal Data:</caption>
<thead>
<tr>
<th scope=\"col\">TagName:</th>
<th scope=\"col\">Enabled</th>
<th scope=\"col\">EU Value</th>
</tr>
</thead>
<tbody>";
while ($row = mysql_fetch_array($result)) {
$tag = $row["TagName"];
$status = $row["Enabled"];
$Ev = $row["EUValue"];
echo "<tr>
<th scope=\"row\">$tag</th>
<td>$status</td>
<td>$EV</td>
</tr>";
}
echo "</tbody></table>";
?>
Что не так с этим кодом PHP? Сам код выполняется нормально без каких-либо ошибок.
Третий ряд можно исправить, сопоставив регистр имен переменных. Вы присваиваете значение переменной с именем $Ev
(строчные буквы ‘v’):
$Ev = $row["EUValue"];
но пытается использовать переменную с именем $EV
(прописные буквы ‘V’):
<td>$EV</td>
Как для второго, так и для третьего полей убедитесь, что Enabled
а также EUValue
точно совпадают имена полей в вашей базе данных, включая регистр и орфографию.
Наконец, проверьте сами данные, чтобы убедиться, что поля содержат данные в вашей базе данных и что данные отображаются в выводе HTML.
Других решений пока нет …