我正在尝试创建一个包含一些HTML标记的变量,这不像我想要的那样工作。我希望有人能说出我在这里做错了什么。
我的代码:
$foto = "put picture here";
$naam = 'Sieraad1';
$prijs = '20,00';
$artikel = '<img src="'$foto'"><h4>'$naam'</h4><h6>€'$prijs'</h6>';
echo '<table><tr><td>'.htmlspecialchars(stripslashes($artikel)).'</td><td>'.htmlspecialchars(stripslashes($artikel)).'</td><td>'.htmlspecialchars(stripslashes($artikel)).'</td><td>'.htmlspecialchars(stripslashes($artikel)).'</td></tr>';
echo '<table><tr><td>'.htmlspecialchars(stripslashes($artikel)).'</td><td>'.htmlspecialchars(stripslashes($artikel)).'</td><td>'.htmlspecialchars(stripslashes($artikel)).'</td><td>'.htmlspecialchars(stripslashes($artikel)).'</td></tr>';
echo '</table>';
答案 0 :(得分:2)
$artikel = '<img src="'$foto'"><h4>'$naam'</h4><h8>€'$prijs'</h8>';
这里的连接变量之间缺少.
。
答案 1 :(得分:0)
在html代码上使用htmlspecialchars
会将<
转换为<
,将>
转换为>
,将"
转换为"
。所以它显然会破坏你的代码。而是在内部内容上运行htmlspecialchars
:
$artikel = '<img src="' . htmlspecialchars($foto) . '"><h4>' . htmlspecialchars($naam) . '</h4><h8>€' . htmlspecialchars($prijs) . '</h8>';
echo '<table><tr><td>'.$artikel.'</td>...';
答案 2 :(得分:0)
试
$artikel = "<img src=\"'$foto'\"><h4>'$naam'</h4><h8>€'$prijs'</h8>";
或
$artikel = '<img src="' . $foto . '"><h4>' . $naam . '</h4><h8>€' . $prijs .'</h8>';
然后回复$ artikel - 你不需要htmlspecialchars
答案 3 :(得分:0)
var连接。用以下内容替换用户代码行:
$artikel = '<img src="'.$foto.'"><h4>'.$naam.'</h4><h8>€'.$prijs.'</h8>';
答案 4 :(得分:0)
易于使用
<?php
echo <<< END
<table class="head"><tr>
<td class='head'>$name</td>
<td>$fname</td>
</tr></table>
END;
?>
或
<?php
echo "<table class='head'><tr>
<td class='head2'>$name</td>
<td class='head3'>$fname</td>
</tr></table>";
?>