【问题标题】:Adding HTML codes inside PHP在 PHP 中添加 HTML 代码
【发布时间】:2020-11-20 08:02:15
【问题描述】:

我正在尝试向我的表格中添加一个查看按钮,但我遇到了一个语法错误,即意外的 href。好像我的格式有问题。还在努力学习 PHP 但是可以在表格中添加 href 吗?

这是我的代码:

while($row = mysqli_fetch_array($result))
{
    $output .= '
        <tr>
            <td>'.$row["name"].'</td>
            <td>'.$row["temperature"].'</td>
            <td>'.$row["phoneno"].'</td>
            <td> '<a href='read.php?id='. $row['id'] .'' title='View Record' data-toggle='tooltip'><i class='fa fa-eye' style='font-size:30px; color: black;''></i></a>';' </td>
        </tr>
    ';
}
echo $output;

这是看起来错误的颜色编码的图像。

【问题讨论】:

标签: php html mysql database


【解决方案1】:

这是因为您使用单引号来分隔字符串,而在字符串中使用单引号来表示值。

这-

<td> '<a href='read.php?id='. $row['id'] .'' title='View Record' data-toggle='tooltip'><i class='fa fa-eye' style='font-size:30px; color: black;''></i></a>';' </td>

应该是这个-

<td><a href="read.php?id='. $row['id'] .'" title="View Record" data-toggle="tooltip"><i class="fa fa-eye" style="font-size:30px; color: black;"></i></a></td>';

【讨论】:

  • 看了这篇文章我才明白PHP解析/语法错误;以及如何解决它们,但答案是一个很好的指南,会有所帮助。非常感谢您的帮助!
【解决方案2】:

只是引号不匹配。

混合 PHP 和 HTML 的方法有很多,而且您选择了硬语法。请与 e.g. 进行比较:

<?php foreach($foo as $row) { ?>
    <tr>
        <td><?= $row["name"] ?></td>
        <td><?= $row["temperature"] ?></td>
        <td><?= $row["phoneno"] ?></td>
        <td>
            <a href='read.php?id=<?= $row['id'] ?>' title='View Record' data-toggle='tooltip'><i class='fa fa-eye' style='font-size:30px; color: black;'></i></a>
        </td>
    </tr>
<?php }

顺便说一句,您正在将原始文本注入 HTML,请注意它可能随时破坏您的标记。

【讨论】:

  • 我自己在两者之间翻来覆去。如果可以,我会使用上述方法,但是如果我必须将所有 html 放入一个变量中以进行方法返回,我会在 OP 中使用 concat 样式(因为我讨厌使用 ob_funcs 来捕获片段)。所有好的例子都在这里。
【解决方案3】:

你的报价到处都是。您使用单引号打开一个字符串变量,因此每次您在刚刚创建的字符串中使用未转义的单引号时都会被中断。

应该是这样的:&lt;a href="read.php?id='.$row['id'].'" ... &gt;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-08
    • 2015-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多