在代码中有这样一个语句
<li><a href="?file=taskmanager&action=newtask" target="right">任务添加</a></li>
action是一个变量
请问这个跳转是怎么工作的,我的看法是会跳转到文件名为taskmanager的文件中执行,但是该文件中没有action=newtask的选项,实际的代码工作的效果是跳到了一个文件名为newtask的文件执行。
请各位帮忙看看这是为什么?谢谢大家
如果能解释一下类型<a href="?file=taskmanager&action=newtask" ></a>的工作机制那就更好了
<li><a href="?file=taskmanager&action=newtask" target="right">任务添加</a></li>
action是一个变量
请问这个跳转是怎么工作的,我的看法是会跳转到文件名为taskmanager的文件中执行,但是该文件中没有action=newtask的选项,实际的代码工作的效果是跳到了一个文件名为newtask的文件执行。
请各位帮忙看看这是为什么?谢谢大家
如果能解释一下类型<a href="?file=taskmanager&action=newtask" ></a>的工作机制那就更好了
action 也如此炮制乍样处理,不同的程序是可能不同的处理,尽管url可能一样。
主要是看程序的路由是乍样处理的
主要是看程序的路由是乍样处理的
点击该链接将转入接口文件(该页面本身,通常为 index.php)
该接口分析出请求的动作(action)newtask 后转到文件 taskmanager 去执行
可以是 include 该文件,也可以是 实例化 taskmanager 这个类,或者是其他
代码大概是这个样子的:
这个是网页左边菜单栏的选择代码:
<div class="menuTitle">任务管理</div>
<div class="menuContent">
<ul>
<li><a href="?file=taskmanager&action=newtask" target="right">任务添加</a></li>
<li><a href="?file=taskmanager&action=cancel" target="right">任务取消</a></li>
<li><a href="?file=taskmanager&action=edit" target="right">任务修改</a></li>
<li><a href="?file=taskmanager&action=scout" target="right">任务监控</a></li>
<li><a href="?file=taskmanager&action=find" target="right">内容检索</a></li>
</ul>
</div>
这个是taskmanager文件的内容
<?php defined('IN_JXCMS') or exit('Access Denied'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="generator" content="<?php echo $set_generator; ?>" />
<script language="JavaScript" src="images/js/jquery.js"></script>
<script language="JavaScript" src="data/config.js"></script>
<script type="text/javascript" src="templates/admin/images/admin.js"></script>
<link href="templates/admin/images/admin.css" rel="stylesheet" type="text/css">
</head> <body>
<table cellpadding="0" cellspacing="1" class="table_list">
<caption>任务管理</caption>
<tr>
<td>
<strong>管理选项:</strong>
<a href="?file=taskmanager&action=cancel">任务取消</a> |
<a href="?file=taskmanager&action=edit">任务修改</a>
</td>
</tr>
</table> <table cellpadding="0" cellspacing="1" class="table_form">
<caption><?php if($action == 'cancel') { ?>取消<?php } elseif($action == 'edit') { ?>修改<?php } ?>任务</caption>
</table>
<br>
<div style="margin: 10px;text-align: center;">
</body>
</html>
比如说点击左边的“任务添加”,会在页面的左边执行newtask.php文件的内容
newtask的文件内容如下:<?php defined('IN_JXCMS') or exit('Access Denied'); ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>内容分发网络管理系统</title>
<meta name="generator" content="<?php echo $set_generator; ?>" />
<script language="JavaScript" src="images/js/jquery.js"></script>
<script language="JavaScript" src="data/config.js"></script>
<script type="text/javascript" src="templates/admin/images/admin.js"></script>
<link href="templates/admin/images/admin.css" rel="stylesheet" type="text/css">
</head> <body>
<?php if($action == 'newtask') { ?>
<script language = 'javascript'>
// 表单提交检测
function doCheck1(obj){
// 检测表单的有效性
// 如:标题不能为空,内容不能为空,等等....
if(obj.taskID.value==''){
alert("请输入任务ID!");
obj.taskID.focus();
return false;
}
if(obj.ftp.value==''){
alert("请输入ftp地址!");
obj.ftp.focus();
return false;
}
return true;
} function doCheck2(obj){
// 检测表单的有效性
// 如:标题不能为空,内容不能为空,等等....
if(obj.taskID.value==''){
alert("请输入任务ID!");
obj.taskID.focus();
return false;
}
if(obj.infohash.value==''){
alert("请输入infohash值!");
obj.infohash.focus();
return false;
}
return true;
}
。
请大家帮忙看看,为什么会执行newtask文件,谢谢大家