基于php伪静态的实现详细介绍


Posted in PHP onApril 28, 2013

1.根据$_SERVER['PATH_INFO']来操作实现。
   举个列子比如你的网站的地址是 http://127.0.0.1/show_new.php/look-id-1.shtml
你echo $_SERVER['PATH_INFO'] 出来的结果就会是 /look-id-1.shtml 看到这个我想大家可能已经明白了。
完整的demo
index.php

index.php 
$conn=mysql_connect("localhost","root","root")or dir("连接失败");
mysql_select_db("tb_demo",$conn);
$sql="select * from news";
$res=mysql_query($sql);
header("content-type:text/html;charset=utf-8");
echo "<h1>新闻列表</h1>";
echo "<a href='add_news.html'>添加新闻</a><hr/>";
echo "<table>";
echo "<tr><td>id</td><td>标题</td><td>查看详情</td><td>修改新闻</td></tr>";
while($row=mysql_fetch_assoc($res)){
 echo "<tr><td>{$row['id']}</td><td>{$row['title']}</td><td><a href='show_new.php/look-id-{$row['id']}.shtml'>查看详情</a></td><td><a href='#'>修改页面</a></td></tr>";
}
//上面的红色的地址本来该是show_news.php?act=look&id={$row['id']}
echo "</table>";
//关闭资源
mysql_free_result($res);
mysql_close($conn);

show_new.php页面
show_new.php 
header("Content-type:text/html;charset=utf-8");
$conn=mysql_connect("localhost","root","root");
mysql_select_db("tb_demo",$conn);
mysql_query("set names utf8");
 $pa = $_SERVER['PATH_INFO'];
//$pa  打印出来的值是  /look-id-1.html
//通过正则表达式匹配获取的url地址
if(preg_match('/^\/(look)-(id)-([\d])\.shtml$/',$pa,$arr)){
 $act = $arr[1]; //这个是请求的look方法
 $id = $arr[3];  //这个是获取的id 值
 $sql="select * from news  where id= $id";
 $res=mysql_query($sql);
 $res = mysql_fetch_assoc($res);
 echo $res['title']."<hr>".$res['content'];
}else{
 echo "url地址不合法";
}
mysql_close($conn);

看到上面的这个我想大家肯定懂了吧   其实这种方式用的不多的下面的给大家说第二种方法了啊

2.根据配置.htaccess来实现。
  先说下.htaccess文件怎么创建吧,在网站根目录下建立个记事本然后双击打开点击另存为 文件名写成
.htaccess ,保存类型选择所有文件,编码选择utf-8的编码好的这是你就在目录看到这个.htaccess文件了

首先在apache 开启mod_rewrite.so,AllowOverride None  这里有两处 替换为 AllowOverride All

比如href 地址写成 one_new-id-1.shtml //这个意思是one_new.php?id=1
这里的.htaccess 就可以这么写了

<IfModule rewrite_module>
#写你的rewrite规则
RewriteEngine On
# 可以配置多个规则,匹配的顺序是从上到下
RewriteRule  one_new-id-(\d+)\.shtml$ one_new.php?id=$1 //这里的$1 代表的是第一个参数啊
RewriteRule  abc_id(\d+)\.html$     error.php
#设置404错误
#ErrorDocument  404  /error.php
</IfModule>

你在one_new.php 页面echo $_GET['id'] 肯定会输出 id的值了

 说明:这个目前个人能力只能写到这里了 我以后会逐渐完善 的
 有问题可以给我留言啊

PHP 相关文章推荐
一个简单计数器的源代码
Oct 09 PHP
php中的实现trim函数代码
Mar 19 PHP
Mysql中limit的用法方法详解与注意事项
Apr 19 PHP
php后台程序与Javascript的两种交互方式
Oct 25 PHP
ajax+php打造进度条代码[readyState各状态说明]
Apr 12 PHP
PHP 命令行参数详解及应用
May 18 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
Dec 21 PHP
PHP使用strstr()函数获取指定字符串后所有字符的方法
Jan 07 PHP
Yii2学习笔记之汉化yii设置表单的描述(属性标签attributeLabels)
Feb 07 PHP
PHP培训要多少钱
Jun 06 PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 PHP
php实现统计二进制中1的个数算法示例
Jan 23 PHP
php无限极分类实现的两种解决方法
Apr 28 #PHP
php 目录遍历、删除 函数的使用介绍
Apr 28 #PHP
基于php权限分配的实现代码
Apr 28 #PHP
基于ubuntu下nginx+php+mysql安装配置的具体操作步骤
Apr 28 #PHP
phpcms模块开发之swfupload的使用介绍
Apr 28 #PHP
php中get_headers函数的作用及用法的详细介绍
Apr 27 #PHP
使用php get_headers 判断URL是否有效的解决办法
Apr 27 #PHP
You might like
PHP获取客户端及服务器端IP的封装类
2016/07/21 PHP
IE php关于强制下载文件的代码
2008/08/23 Javascript
javascript call方法使用说明
2010/01/11 Javascript
javascript unicode与GBK2312(中文)编码转换方法
2013/11/14 Javascript
jquery中JSON的解析方式
2015/03/16 Javascript
使用AngularJS实现表单向导的方法
2015/06/19 Javascript
Easyui Treegrid改变默认图标的方法
2016/04/29 Javascript
jQuery实现点击DIV同时点击CheckBox,并为DIV上背景色的实例
2017/12/18 jQuery
vuex2中使用mapGetters/mapActions报错的解决方法
2018/10/20 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
浅谈Vue.set实际上是什么
2019/10/17 Javascript
javascript实现异形滚动轮播
2019/11/28 Javascript
微信小程序实现锚点跳转
2020/11/23 Javascript
windows如何把已安装的nodejs高版本降级为低版本(图文教程)
2020/12/14 NodeJs
[02:19]DOTA2上海特级锦标赛 观赛指南 Spectator Guide
2016/02/04 DOTA
在Django的视图中使用数据库查询的方法
2015/07/16 Python
开源Web应用框架Django图文教程
2017/03/09 Python
解决python写入mysql中datetime类型遇到的问题
2018/06/21 Python
Python + selenium + requests实现12306全自动抢票及验证码破解加自动点击功能
2018/11/23 Python
pyinstaller打包程序exe踩过的坑
2019/11/19 Python
Python+Dlib+Opencv实现人脸采集并表情判别功能的代码
2020/07/01 Python
HTML5里autofocus自动聚焦属性使用介绍
2016/06/22 HTML / CSS
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
Java文件和目录(IO)操作
2014/08/26 面试题
会计毕业生自荐书
2014/06/12 职场文书
电气工程及其自动化专业求职信
2014/06/23 职场文书
经济贸易系求职信
2014/08/04 职场文书
2015大学生实训报告
2014/11/05 职场文书
幼儿园六一儿童节活动总结
2015/02/10 职场文书
婚育证明格式
2015/06/17 职场文书
2015年小学远程教育工作总结
2015/07/28 职场文书
2019年世界儿童日宣传标语
2019/11/22 职场文书
html5移动端禁止长按图片保存的实现
2021/04/20 HTML / CSS
pytorch常用数据类型所占字节数对照表一览
2021/05/17 Python
JS中如何优雅的使用async await详解
2021/10/05 Javascript
JS前端使用canvas实现物体的点选示例
2022/08/05 Javascript