时间:2021-05-19
比如,下面,我要实现这样的URL:
http://xxx.com/0725
http://xxx.com/0726
http://xxx.com/0727
…
上面xxx.com是一个记录《今天是》这样的历史内容的一个测试站点。上面链接的意思,就是显示07月25日的历史上发生了什么事情,类似这样。这样看起来就很美观、整齐了。要不然,可能的地址就是:
http://xxx.com/index.php?t...
http://xxx.com/index.php?t...
http://xxx.com/index.php?t...
…
现在我就是要实现把index.php?today=隐藏掉。以下是代码:
1..htaccess文件
<IfModulemod_rewrite.c>
RewriteEngineOn
RewriteBase/
RewriteCond%{REQUEST_FILENAME}!-f
RewriteCond%{REQUEST_FILENAME}!-d
RewriteRule^([0-9]+)$/index.php?today=$1
</IfModule>
粗体字这里我说明一下,其它的按这个格式吧,具体我现在也不理解。
[0-9]的意思是,参数只能是0~9这些数字,如果你要包含任何字符,就改为:
RewriteRule^(.+)$/index.php?today=$1
这里[0-9]改为了.,这个.就代表任意字符。当然复杂的还很复杂,我们暂时不管。
2.index.php文件
复制代码 代码如下:
<?php
//rewrite测试
$uid=$_REQUEST['today'];
?>
<HTML>
<HEAD>
<TITLE>rewrite测试</TITLE>
</HEAD>
<BODYBGCOLOR="#FFFFFF"TEXT="#000000"LINK="#0000FF"VLINK="#800080">
今天是<?phpecho$today;?>,看看历史上的今天都发生了什么事情?<br>
……
</BODY>
</HTML>
这里参数就会传递给index.php文件里的$today,在这个程序内,你就可以根据参数,进行处理,如查询数据库啦、做运算啦等,然后再显示相应的数据出来,就可以了。
实现方法2
复制代码 代码如下:
<?php
//url示例:soft.php/1,100,8630.html
//利用server变量取得PATH_INFO信息该例中为/1,100,8630.html也就是执行脚本名后面的部分
if(@$path_info=$_SERVER["PATH_INFO"]){
if(preg_match("/\/(\d+),(\d+),(\d+)\.html/si",$path_info,$arr_path)){
$gid=intval($arr_path[1]);//取得值1
$sid=intval($arr_path[2]);//取得值100
$softid=intval($arr_path[3]);//取得值8630
//相当于soft.php?gid=1&sid=100&softid=8630
}elsedie("Path:Error!");
}elsedie("Path:Nothing!");
echo($gid);
echo("<br>");
echo($sid);
echo("<br>");
echo($softid);
?>
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
相关阅读:JavaScript事件学习小结(五)js中事件类型之鼠标事件JavaScript事件学习小结(一)事件流javaScript事件学习小结(四)eve
相关阅读:JavaScript事件学习小结(五)js中事件类型之鼠标事件JavaScript事件学习小结(一)事件流javaScript事件学习小结(四)eve
相关阅读:JavaScript事件学习小结(五)js中事件类型之鼠标事件JavaScript事件学习小结(一)事件流javaScript事件学习小结(四)eve
相关阅读:JavaScript事件学习小结(五)js中事件类型之鼠标事件JavaScript事件学习小结(一)事件流javaScript事件学习小结(四)eve
相关阅读:JavaScript事件学习小结(五)js中事件类型之鼠标事件JavaScript事件学习小结(一)事件流javaScript事件学习小结(四)eve