我正在寻找一些关于使用If/Else为我的菜单导航或链接到资源的反馈。我做了一些快速的搜索,发现了使用PHP来跟踪当前页面和应用特定的CSS而不是实现菜单本身的项目。
我要做的是让菜单根据菜单改变我的内容div。如果home被点击,div就变成home如果about被点击,div就变成about。
到目前为止,我所做的是创建一个变量'cl',我在每个div中使用id属性进行设置。在我的索引页中,我使用以下命令://if cl is not set include default content div
if(!isset($_GET['cl']))
{
//include main div
}
//if cl is set, check value and include the correct div
//anything that does not match a hard-coded cl value --SHOULD-- default to main
//div...may change this to be a custom error page
if(isset($_GET['cl']))
{
if($_GET['cl']=="content-main")
{
//include main content div
}
elseif($_GET['cl']=="content-anotherPage")
{
//include another page div
}
else
{
//include main content or possibly custom error
}
}
我为其他菜单项添加了更多的elseif块,但保留了这个小块来显示我正在做的事情。
这个方法是有效的方法吗?有没有什么基本的东西是我应该注意的?我的If/else块安全吗?(通过安全,我的意思是改变URL的值应该只是恢复到默认的内容div。我试着把一个基本的javascript警报脚本到URL,它默认到主页,但不确定如果我的基本测试涉及到实际的安全性)。
第一次海报…如果我没有遵守礼仪,请告诉我,我很乐意纠正!
迈克而不是一堆if
/elseif
的我宁愿使用switch/case
语法:
switch( $_GET['cl'] ) {
case "content-main":
...
break;
default:
...
break;
}
如果您有很多条件,我会使用switch语句代替http://www.w3schools.com/php/php_switch.asp,因为它要快得多。如果你只有几个条件,比如少于5或6,If/else就可以了。