我在detailansicht.php中有以下代码:
<div class="file_description_box">
<b>Beschreibung:</b><br /><br />
<?php
if(!empty($beschreibung))
echo '<div align="center">';
echo '<img src="$coverlink" alt="Cover">';
echo '</div><br />';
echo format_content($beschreibung);
**else**
echo '<i>Keine Beschreibung vorhanden</i>';
?>
</div>
但我认为img标签中存在错误。每当我打开页面时,他都会向我显示一个错误:“解析错误:语法错误,第123行的bla / bla / include / detailansicht.php中的意外T_ELSE”(第123行是标记为粗体的else)。 我尝试了几种方法,但我总是得到这个错误。 如果有人可以帮助我,那就太好了。
-sTarbuZz
答案 0 :(得分:15)
您缺少一些大括号,而您的PHP变量不是嵌入属性。您的代码应如下所示:
<div class="file_description_box">
<b>Beschreibung:</b><br /><br />
<?php
if(!empty($beschreibung)){
echo '<div align="center">';
echo '<img src="'.$coverlink.'" alt="Cover">';
echo '</div><br />';
echo format_content($beschreibung);
}else{
echo '<i>Keine Beschreibung vorhanden</i>';
}
?>
</div>
请注意,使用PHP的内容并不重要,如果图像标记出现故障而且显示不正确,假设您输入正确,则通常会出现HTML问题
在这种情况下,这是一个PHP问题,因为代码中有一些错误,它与图像标记没有任何关系。
答案 1 :(得分:1)
你缺少大括号:
if () {
...
} else {
...
}
所以你的PHP在语法上不正确,不会被PHP超文本预处理器解析。
答案 2 :(得分:1)
尝试使用花括号:
<?php
if(!empty($beschreibung)) {
echo '<div align="center">';
echo '<img src="$coverlink" alt="Cover">';
echo '</div><br />';
echo format_content($beschreibung);
} else {
echo '<i>Keine Beschreibung vorhanden</i>';
}
?>
答案 3 :(得分:1)
使用
echo '<img src="', $coverlink', " alt="Cover">';
单引号内的PHP变量将不会被评估
答案 4 :(得分:1)
你也错过了img标签的结尾(/&gt;),但这与你的问题无关。
答案 5 :(得分:1)
我会选择alternative syntax,我觉得眼睛与html混合起来更容易:
<? if(!empty($beschreibung)) : ?>
<div align="center">
<img src="<?= $coverlink; ?>" alt="Cover">
</div><br />
<?= format_content($beschreibung); ?>
<? else : ?>
<i>Keine Beschreibung vorhanden</i>
<? endif ; ?>
PS:我并不主张将逻辑放在标记中,只是注意到它可以完成。
编辑:修复了语法错误(;在endif之后而不是:)
答案 6 :(得分:1)
<?php
if(!empty($beschreibung)) {
echo "<div align=\"center\">";
echo "<img src=\"$coverlink\" alt=\"Cover\">";
echo "</div><br />";
echo format_content($beschreibung);
} else {
echo "<i>Keine Beschreibung vorhanden</i>";
}
?>
答案 7 :(得分:1)
感谢您的所有答案...... 我现在正在尝试克里斯的方法......
带括号的东西......我不知道这是怎么发生的......我没有写原始剧本(我只是添加了封面的部分)而我不认识那里缺少括号,因为$ beschreibung永远不会是空的,我认为如果括号缺失,我会忽略if和else ...