PHP代码(functions.php)
$main = $db_sql->query_array("SELECT catid,titel,subcat,startorder FROM $cat_table WHERE catid='$subcat'");
$tpl->register('category_title',stripslashes($main['titel']));
$tpl->register('category_id',$main['catid']);
所以我想添加一个if语句,如果{category_id}
不为0,那么执行以下代码
<img src="{GRAFURL}/{category_id}.jpg" alt="{category_title}" width="50" height="50" border="0" align="middle" /> {category_title}
什么是正确的语法?
还需要更多代码用于html文件吗?
答案 0 :(得分:4)
HTML没有像if语句这样的动态功能。将HTML视为定义布局的语言 - 使用HTML本身不可更改。
这应该可以解决问题:
<?php
if ( false === is_empty( $category_id )) {
echo "<img src='{$GRAFURL}/{$category_id}.jpg' alt='{$category_title}'
width='50' height='50'
border='0' align='middle' /> {$category_title} ";
}
?>
答案 1 :(得分:2)
HTML没有这样的功能。您需要使用编程语言生成HTML。然后语法将取决于您使用的语言。
e.g。在TT中:
[% IF category_id %]
<img src="[% GRAFURL %]/[% category_id %].jpg"
alt="{category_title}" width="50"
height="50" border="0" align="middle"
/> [% category_title %]
[% END %]
答案 2 :(得分:0)
使用javascript生成客户端,PHP用于服务器端。 Javascript可以更改页面上的内容,并在页面发送到客户端后提供动态内容; PHP可以确定之前的内容将其发送给用户(虽然它可以在之后编辑它,但它更复杂)。
例如,如果您想将其添加到ID为“dynamic”的代码,则可以使用此代码:
<html>
<head>
<script type="text/javascript">
window.onload = function() {
var img_tag = document.createElement('img');
img_tag.src = "{GRAFURL}/{category_id}.jpg";
img_tag.alt = "{category_title}";
img_tag.width = 50;
img_tag.height = 50;
img_tag.border = 0;
img_tag.align = "middle";
document.getElementById("dynamic").appendChild(img_tag);
};
</script>
</head>
<body>
<div id="dynamic">
</div>
<body>
</html>
我完全建议学习jQuery,但是,你可以更容易,更快地完成任务。此外,您可以使用正确的值(通过PHP或javascript)替换大括号中的值,我无法分辨您在做什么。