我在 MySQL 中有一個包含 10 行和 19 列的表。我正在嘗試以 HTML 顯示表格的內容。為此,我撰寫了以下代碼。
<?php
.
.
.
$con = mysqli_connect($host,$user,$password,$db);
$i="select * from data where user='".$usr."'";
$result=mysqli_query($con,$i);
$matrix = mysqli_fetch_all($result);
$row = $matrix[0];
$cell = $row[1];
echo $cell;
}
?>
<html>
<style>
table {
border:2px solid black;
width: 100%;
margin-left:0%;
}
tr, td {
border:1px solid black;
width: 1%;
font-size: 20px;
text-align:center;
}
</style>
<table>
<?php
$b=0;
while ($b<10) {
echo '
<tr>
<?php
$a=0;
while ($a<18) {
echo "
<td>
$row[$a]
</td>
";
$a ;
}
?>
</tr>
';
$b ;
}
?>
</table>
</html>
該代碼不起作用。我還閱讀了一個類似的問題,該問題的回答是<?p ?> 用". ." . 我試過這個,但沒有得到預期的結果。這段代碼有什么問題?
uj5u.com熱心網友回復:
您正在回聲中放置一個打開的 php 標簽。相反,將它們分開。
<table>
<?php
$b=0;
while ($b<10) {
echo '<tr>';
$a=0;
while ($a<18) {
echo "<td>$row[$a]</td>";
$a ;
}
echo '</tr>';
$b ;
}?>
</table>
在你的代碼中,你有這個:
...
echo '
<tr>
<?php
$a=0;
...
...有3個錯誤。首先,php 中單引號內的任何內容都不會被評估(決議)。所以,即使是這樣的:echo 'hello $name';會吐出輸出:hello $name而echo "hello $name";(雙引號)會決議變數$name并吐出類似的東西:hello Sam。
其次,當您已經在一個 php 標簽中時,您正試圖打開一個新的 php 標簽。
第三,這真的是這里的交易破壞者,您試圖在回顯字串內開始一個新的邏輯塊(回圈)。這不適用于單引號或雙引號。如果您查看我的回答,我會關閉第一個回聲以開始回圈。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/363692.html
標籤:php html mysql html-table
