在侧边栏中获取当前类($ _GET ['do'] ==“”)

时间:2013-11-06 14:36:19

标签: php

在我的侧边栏中添加了使用此代码进行活动链接的类:

<?php echo ($_GET['do'] == "") ? "class=\"current\"": "";?>

// This is root link

所有工作但我的error_log文件中有错误....

这是在下一个菜单项中:

<?php echo ($_GET['do'] == "add_account") ? "class=\"current\"": "";?>

也工作但没有错误!所以我需要添加到“”中的东西?或者我怎样才能更好地在php菜单中创建根链接标记?

感谢您的意见!! 问候 Makromat

2 个答案:

答案 0 :(得分:2)

访问PHP中尚不存在的变量(或数组索引或对象属性)会触发Notice(不是错误)。当您访问不存在的$_GET['do']时就是这种情况。

为了解决这个问题,请替换:

<?php echo ($_GET['do'] == "") ? "class=\"current\"": "";?>

使用:

<?php echo !isset($_GET['do']) ? "class=\"current\"": "";?>

同样适用于可能不存在的变量(或数组索引或对象属性)。因此,当您使用$_GET['do']""检查"add_account"是否相等时,您需要先检查isset($_GET['do'])

这意味着您还需要在代码中编辑第二次出现$_GET['do']

<?php echo ($_GET['do'] == "add_account") ? "class=\"current\"": "";?>

变为:

<?php echo (isset($_GET['do']) AND $_GET['do'] == "add_account") ? "class='current'" : ""; ?>

就像@Houssni说的那样。

答案 1 :(得分:2)

<?php echo (isset($_GET['do']) && $_GET['do'] == "add_account") ? "class='current'" : ""; ?>

检查它是否存在,然后检查它保留的值。