如何将HTML标记放入PHP变量中?

如何将HTML标记放入PHP变量中?,php,html,variables,Php,Html,Variables,我正在尝试创建一个包含一些HTML标记的变量,但它不能像我希望的那样工作。我希望有人能告诉我我做错了什么 我的代码: $foto = "put picture here"; $naam = 'Sieraad1'; $prijs = '20,00'; $artikel = '<img src="'$foto'"><h4>'$naam'</h4><h6>€'$prijs'</h6>'; echo '<table><tr

我正在尝试创建一个包含一些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>';
$foto=“将图片放在这里”;
$naam='Sieraad1';
$prijs='20,00';
$artikel=“$naam”€“$prijs”;
回显'.htmlspecialchars(stripslashes($artikel)).'.htmlspecialchars(stripslashes($artikel)).'.htmlspecialchars(stripslashes($artikel)).'.htmlspecialchars(stripslashes($artikel)).';
回显'.htmlspecialchars(stripslashes($artikel)).'.htmlspecialchars(stripslashes($artikel)).'.htmlspecialchars(stripslashes($artikel)).'.htmlspecialchars(stripslashes($artikel)).';
回声';
$artikel='$naam'€'$prijs'';

在这里,用于连接的变量之间缺少

在html代码上使用
htmlspecialchars
转换为code/code,code>转换为
转换为
。所以它显然会破坏你的代码。改为在内部内容上运行
htmlspecialchars

$artikel = '<img src="' . htmlspecialchars($foto) . '"><h4>' . htmlspecialchars($naam) . '</h4><h8>€' . htmlspecialchars($prijs) . '</h8>';
echo '<table><tr><td>'.$artikel.'</td>...';
$artikel=''。htmlspecialchars($naam)。'€' . htmlspecialchars($prijs)。“”;
回音“.$artikel.”;
试试看

$artikel=“$naam”€“$prijs”;

$artikel=''$纳姆。”€' . $普里斯;

然后只需回显$artikel-您不需要htmlspecialchars

变量$artikel缺少var串联。将用户代码行替换为以下内容:

$artikel = '<img src="'.$foto.'"><h4>'.$naam.'</h4><h8>€'.$prijs.'</h8>';
$artikel='.$naam.'.'.'.$prijs'.';
易于使用

<?php
echo <<< END
<table class="head"><tr>
  <td class='head'>$name</td>
  <td>$fname</td>
 </tr></table>
END;
?>


这帮了大忙!然而,它仍然在更大的文本中呼应blabla而不是blabla。。您还知道如何解决这个问题吗?顺便说一下,标记从1到6。为什么要对不包含用户输入的变量调用
htmlspecialchars()
stripslashes()
?最终要从数据库中获取前三个值,我刚刚习惯PHP,所以我认为首先设置布局是明智的。
$artikel = '<img src="' . $foto . '"><h4>' . $naam . '</h4><h8>€' . $prijs .'</h8>';
$artikel = '<img src="'.$foto.'"><h4>'.$naam.'</h4><h8>€'.$prijs.'</h8>';
<?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>";
?>