伪静态大家应该知道
例如你的php页面生成的页面为xxx.php?id=1
为了seo和容易被百度等搜索引擎抓取,也为了防止高并发的时候占用服务器资源
我们应该把xxx.php?id=1页面的链接显示为xxx_1.html等类似格式,反正就是.html为后缀。

我自己没有深入研究这个,但是我简单实现了这个。

1 简单的列表

<?php
//连接数据库
$con = mysql_connect("localhost","root","root");
//选择数据库
mysql_select_db("test", $con);
//查询数据库
$result = mysql_query("SELECT * FROM list");
//遍历输出数据库
while($row = mysql_fetch_array($result)){$url = $row["url"];$id = $row["id"];if(empty($url)){echo "<a href='p.php?id=$id'/>$row[title]</a><br/>";}else{echo "<a href='http://localhost/20180417/$url'/>$row[title]</a><br/>";}}
mysql_close($con);
?>

如图:

此时,所有的标题超链接显示的都是p.php?id=x
重要的是p.php页面

p.php遍历输出的时候
查询了数据库url字段,如果为空,那么就开始进行file_get_contents获取整个页面的html代码,然后把代码写入到一个名为LKY_$id.html的html文件,其中$id是当前页面的id,如果当前页面id=1,那么生成的文件名为LKY_1.html,接着就把这个文件名更新到数据库的url字段

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<?php
//连接数据库
$con = mysql_connect("localhost","root","root");
//选择数据库
mysql_select_db("test", $con);
//获得id
$id =$_GET["id"];
//查询数据库
$result = mysql_query("SELECT * FROM list where id =".$id);
//遍历输出数据库
while($row = mysql_fetch_array($result)){$url = $row["url"];if(empty($url)){$get_html = "http://localhost/20180417/get_html.php?id=$id";$html_utl = "LKY_$id.html";$con_html = file_get_contents($get_html);$html = fopen($html_utl, "w");fwrite($html, $con_html);fclose($html);echo $row["zhengwen"];mysql_query("UPDATE list SET url = '$html_utl' WHERE id = '$id'");}else{echo $row["zhengwen"];}}
mysql_close($con);
?>
</body>
</html>

当用户访问xxx.p.php?id=1的时候,就会进行查询数据库,如果url字段为空,那么就获取整个页面的html,这个获取html页面的来源又用一个get_html.php进行获取

<!DOCTYPE html>
<html>
<head>
</head>
<body>
<?php
//连接数据库
$con = mysql_connect("localhost","root","root");
//选择数据库
mysql_select_db("test", $con);
//获得id
$id =$_GET["id"];
//查询数据库
$result = mysql_query("SELECT * FROM list where id =".$id);
//遍历输出数据库
while($row = mysql_fetch_array($result)){echo $row["zhengwen"];}
mysql_close($con);
?>
</body>
</html>

获取到了之后生成html文件并保存在服务器我们指定的目录,如果访问xxx.p.php?id=1,判断url字段不为空,则直接输出该页数据或者跳转到LKY_1.html

那么在首页的列表中也做了相应的判断,判断url是否为空,如果为空,那么输出的是p.php?id=1的超链接,否则从数据库取url字段的html文件名,则输出LKY_1.html

要说的是,这是实实在在生成html文件的!

傻瓜式的php+mysql伪静态(真实存在的html页面)相关推荐

  1. MySql傻瓜式安装【详细教程】

    文章目录 前言 一.下载MySql 二.安装MySql 三.安装成功 四.配置环境变量 总结 前言 MySql傻瓜式安装[详细教程]

  2. mysql web工具 jar_websql: websql网页sql管理工具,在线执行SQL,管理数据源,常用sql记录,体积小,傻瓜式便捷,jar运行。...

    WEBSQL 介绍 WEBSQL由JAVA语言纯编,H2内嵌数据库.完全开源,体积小,傻瓜式,开箱即用. ---简约而不简单 动态配置MYSQL,ORACLE等关系型数据库源,保存SQL文本实时获取, ...

  3. nextcloud网站不安全_教你搭建私有云盘,简单快速,完全傻瓜式!不限速,永久有效!...

    免费的云盘服务有很多,但是总感觉把重要文件存在上面不安全,动不动就跑路或者限速. 辛辛苦苦收集的学习资料,一夜直接可能就会付诸东流. 最稳妥的方式是存放在本地硬盘中,但是要进行共享或者不同设备之间进行 ...

  4. 百度云盘云知梦php_教你搭建私有云盘,简单快速,完全傻瓜式!不限速,永久有效!...

    免费的云盘服务有很多,但是总感觉把重要文件存在上面不安全,动不动就跑路或者限速. 辛辛苦苦收集的学习资料,一夜直接可能就会付诸东流. 最稳妥的方式是存放在本地硬盘中,但是要进行共享或者不同设备之间进行 ...

  5. clickhouse的傻瓜式安装和基础入门

    clickhouse的傻瓜式安装 1)安装curl工具 yum install -y curl 2)添加clickhouse的yum镜像 curl -s https://packagecloud.io ...

  6. 开源自助建站系统源码完整源码+搭建教程 傻瓜式一键建站系统源码

    一键傻瓜式自助建站系统源码,目前包含七百多套完整网站模板,全部都是响应式网站模板,傻瓜一键自助建站.开发组合PHP+mysql,功能强大. 一键自助建站系统源码带安装教程,源码下载:春哥技术博客获取. ...

  7. 在线客服聊天系统源码_美观强大golang内核开发_二进制运行傻瓜式安装_附搭建教程...

    在线客服系统是什么 在线客服系统可以看作一种即时通讯软件,提供网站及其他应用和访客对话的平台,更加方便网站与访客之间的交流.访客无需安装软件就可以访问企业应用,获取自己想要的信息. 一般来说,在线客服 ...

  8. Vm挂载虚拟硬盘(傻瓜式教程)

    Vm挂载虚拟硬盘(傻瓜式教程) 第一步:添加虚拟磁盘 打开vm,单机选择红帽的系统 编辑虚拟机设置 点击下面的添加 选择硬盘然后下一步 如果没有特殊的磁盘格式要求就默认推荐就好了 使用物理硬盘:需要一 ...

  9. android material design icon generator,傻瓜式 Material Design 风格矢量图标生成器

    大家初学ORACLE时,在LINUX环境下安装ORACLE会遇到一些麻烦,      前言:特别是没有LINUX基础的人,会毫无头绪不知如何安装,百度安装ORACLE,给的安装步骤也是相当麻烦,在这里 ...

最新文章

  1. 开发管理 CheckLists(4) -风险管理
  2. Swift类扩展使用方法
  3. 三角形的几何公式大全_数学老师精心整理:小学四年级公式大全,各个知识点逢考必有...
  4. linux服务器拷贝目录文件夹,linux两台服务器之间文件/文件夹拷贝
  5. [转]关于数据中台、数据平台、数据仓库、数据湖等数据概念的对比解析
  6. 运维人员日常工作(转自老男孩)
  7. 课下测试03!03!03!题目截图及解析(不完全正确)第四周--信息安全系统设计基础...
  8. 大话Linux内核中锁机制之原子操作、自旋锁【转】
  9. (0)C#开发环境构建——史上最容易理解的C#界面搭建
  10. ubuntu 版安裝mysql8
  11. FileZilla Server + FlashFXP 快速搭建FTP服务
  12. 博士后到底值不值得做?!
  13. 正点原子STM32(基于HAL库)2
  14. 高德地图定位坐标偏差android,【报Bug】app端高德地图定位不准确
  15. 海量固定资产如何进行盘点?
  16. 软件架构-zookeeper之curator详解
  17. 《动手学深度学习》报错 解决方案RuntimeError: DataLoader worker (pid(s) ...) exited unexpectedly
  18. krpano场景拖动时拖动惯性消失的问题
  19. SAP-财务-统驭科目
  20. java m老师小讲堂——画板

热门文章

  1. boost::make_filtered_graph用法的测试程序
  2. boost::bucket_sorter用法的测试程序
  3. ITK:计算矢量图像中每个像素的大小以生成大小图像
  4. VTK:图片之Gradient
  5. VTK:图表之SelectedVerticesAndEdges
  6. OpenCV PCA提取对象的方向的实例(附完整代码)
  7. Qt Creator使用灯光
  8. C++floyd warshall算法求最短路径(附完整源码)
  9. C语言以递归实现归并排序Merge Sort算法(附完整源码)
  10. 经典C语言程序100例之三三