【发布时间】:2022-01-01 12:47:17
【问题描述】:
我在 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 ?> 。我试过这个,但没有得到预期的结果。
这段代码有什么问题?
【问题讨论】:
-
您的代码很容易受到恶劣的 SQL 注入攻击。您确实应该优先更新您的代码以正确使用参数化查询和准备好的语句,然后再打开数据以进行泄露和不可逆转的删除。
-
更多关于您问题的核心,您能否提供一个指向您隐含声称字符串中的 PHP 代码应作为 PHP 代码评估的源的链接?不支持这样的构造并且有充分的理由(如果从不受信任的用户输入中解析字符串,您不会希望我提供包含恶意 PHP 代码的值,即
shell_exec(whoami),对吗?)不清楚您在哪里明白了
标签: php html mysql html-table