<?php
if ($_GET['cate']==''||$_GET['cate']='diary' ) {
echo '<a class="is" href="?cate=diary">DIARY</a><a href="?cate=blog">BLOG</a>';
} elseif ($_GET['cate']='blog') {
echo '<a href="?cate=diary">DIARY</a><a class="is" href="?cate=blog">BLOG</a>';
}
?>
不管为cate设置什么值都输出<a class="is" href="?cate=diary">DIARY</a><a href="?cate=blog">BLOG</a>
你以后写 逻辑表达式的时候,养成把期望值放在前面的习惯,这样,你不小心把==打成=的时候,就会报错。个人认为编码风格可以参考CI框架的,他的文档上面会有说明
粗心的小明死在了==上了
$_GET['cate']================='diary'
粗心的小明, if条件第二个表达式永远为真 elseif的条件也是。
<?php
if ($_GET['cate']==''||$_GET['cate']=='diary' ) {
echo '<a class="is" href="?cate=diary">DIARY</a><a href="?cate=blog">BLOG</a>';
} elseif ($_GET['cate']=='blog') {
echo '<a href="?cate=diary">DIARY</a><a class="is" href="?cate=blog">BLOG</a>';
}
?>
== 符号写错了