【发布时间】:2012-12-14 04:50:48
【问题描述】:
好吧,说我有这些页面,
- /admin/admin.php
- /admin/blogger.php
在我的主 index.php 中,我有一个运行“如果存在 $page”函数的开关数组,它工作正常。我的所有页面都是从 site.com/index.php?page=about、site.com/index.php?page=misc 等调用的。
在我的 admin.php 页面内是一个 php 选项卡式导航,它使用 4 个选项卡用于我的管理部分(博主/图像管理器/文件管理器/引用管理器)。它为 4 个页面使用了选项卡功能的切换。
blogger.php 是我的开关有问题的地方。
现在回答我的问题: 而不是为博客系统设置多个页面,“delete.php、add.php、edit.php 等”并使用“删除点击(delete.php?id=1)here”,我想尝试运行这一切都来自博客页面。例如,“site.com/admin.php?page=blogger&act=dp/ep/ap”将获取正在传递的任何 $act,然后使用开关完成操作。
我的 PAGE 开关工作正常,但是当我尝试调用更多开关时,它不起作用。我尝试使用它作为我的代码
if(isset($_SESSION['id'])) {
$act = $_GET['act'];
switch ($act) {
case 'ap':
addPost();
break;
case 'ep':
editPost();
break;
case 'dp':
delPost();
break;
default:
~table setup
~$query, $result
~if / while loops
~echo $row->article_id/title/author/date
echo "<a href=\"index.php?page=admin&tabindex=0&act=ep&id={$row->article_id}\">Edit</a>"
...
...
...
这是我遇到的问题。页面正确,tabindex 正确,然后停止工作。我只是得到一个空白页面,而不是我应该的编辑页面。我的 editPost 函数是正确的,因为我已经从 editpost.php?id=1 方式对其进行了测试,这是我试图避免的。是的,我的功能也包括在这里。
url 没有被正确传递吗?还是我的动作开关设置不正确。也许在切换之前设置 isset($_GET['act']) ?我很茫然。
谢谢。
【问题讨论】:
-
您的错误是否可见?如果
error_reporting(E_ALL);被隐藏,请尝试将它们置于启动位置。 -
是的,出于开发目的,我有 error_reporting(E_ALL);在我的 header.inc.php 文件中。
-
我想这都是我在这里看到的伪代码,你从 _GET 接收到 act=del/edit/add,并且有实际情况 'del/edit/add': break;部分?
-
对不起,我刚刚在这篇文章中更正了它。 add/edit/del 应该是 ap/ep/dp 以匹配我的 switch case.. 感谢您向我指出这一点。所以是的,&act=ap/ep/dp 开关就在这里。
-
好的,谢谢。我会在我回到我的开发文件所在的家后尝试这个,让你知道它是否有效。
标签: php