PHP通过文件保存和更新信息的方法分析


Posted in PHP onSeptember 12, 2019

本文实例讲述了PHP通过文件保存和更新信息的方法。分享给大家供大家参考,具体如下:

引言

以前在编写一个比赛的机试系统的时候,需要记录和更新考试的截止时间,以前的做法是在数据库中单独建立一个数据表用于保存和更新截止时间。回过头再去看,觉得没有必要单独建立一张表,只需要把时间保存到一个文件中,然后通过修改文件的内容修改考试时间即可。

以前的方案

PHP通过文件保存和更新信息的方法分析

maybe, a little bit stupid….

现在的方案

基本思路:

$time = addslashes($_POST['time']);
$file = md5("time");
$res = file_put_contents($file, $time);

用于保存时间的文件:

PHP通过文件保存和更新信息的方法分析

这种明明方式是出于安全考虑,方式被一些扫描器扫描到。

最后附上完整代码:

manage-time.html

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  <title>时间管理页面</title>
  <script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script>
  <style type="text/css">
  *{
    line-height: 30px;
  }
  </style>
</head>
<body>
<div>
<p>当前时间:<font id="info"></font></p>
<p><input id="time" type="text"/></p>
<p><button id="update">更新时间</button></p>
</div>
<script type="text/javascript">
  $(function(){
    //获取时间
    $("#info").load("time.php");
    //更新时间
    $("#update").click(function(){
      var time = $("#time").val();
      if(time==''){
        alert("时间不能为空");
      }else{
        $.ajax({
          url:'time.php',
          type:'POST',
          data:{'time':time},
          dataType:"json",
          success:function(data){
            if(data.success){
              $("#info").html(data.time);
            }else{
              $("#info").html("更新失败");
            }
          },
          error:function(res){
            alert("发生错误:"+res.status);
          }
          });
      }
    });
  })
</script>
</body>
</html>

time.php

<?php
date_default_timezone_set('Asia/Shanghai');
if(isset($_POST['time']) && $_POST['time']!=''){
  $time = addslashes($_POST['time']);
  update($time);
}else{
  display();
  //update('2011-11-11 11:11:00');
}
function display(){
  $file = md5("time");
  $time = file_get_contents($file);
  echo $time;
}
function update($time){
  if($time == ''){
    echo '{"success":false}';
    exit();
  }
  $file = md5("time");
  $res = file_put_contents($file, $time);
  if($res>0){
    echo '{"success":true,"time":"'.$time.'"}';
  }else{
    echo '{"success":false}';
  }
}

对于有些小系统,只有一个管理员的可将用户名和密码直接写入到登陆判断页面中,或者像这个例子一样,使用一个md5加密后的字符串作为文件名的文件保存用户名和密码。

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
第三节 定义一个类 [3]
Oct 09 PHP
让你的PHP同时支持GIF、png、JPEG
Oct 09 PHP
Adodb的十个实例(清晰版)
Dec 31 PHP
php 一元分词算法
Nov 30 PHP
thinkphp路由规则使用示例详解和伪静态功能实现(apache重写)
Feb 24 PHP
PHP中SESSION的注销与清除
Apr 16 PHP
PHP实现搜索地理位置及计算两点地理位置间距离的实例
Jan 08 PHP
简单的pgsql pdo php操作类实现代码
Aug 25 PHP
php常用字符串String函数实例总结【转换,替换,计算,截取,加密】
Dec 07 PHP
php app支付宝回调(异步通知)详解
Jul 25 PHP
Laravel框架实现的批量删除功能示例
Jan 16 PHP
PHP常见的几种攻击方式实例小结
Apr 29 PHP
关于Curl在Swoole协程中的解决方案详析
Sep 12 #PHP
PHP判断一个变量是否为整数、正整数的方法示例
Sep 11 #PHP
PHP中有关长整数的一些操作教程
Sep 11 #PHP
PHP生成随机字符串实例代码(字母+数字)
Sep 11 #PHP
Yii框架参数配置文件params用法实例分析
Sep 11 #PHP
yii2.0框架使用 beforeAction 防非法登陆的方法分析
Sep 11 #PHP
Laravel框架验证码类用法实例分析
Sep 11 #PHP
You might like
php中判断文件空目录是否有读写权限的函数代码
2012/08/07 PHP
MongoDB在PHP中的常用操作小结
2014/02/20 PHP
PHP正则表达式替换站点关键字链接后空白的解决方法
2014/09/16 PHP
php统计数组元素个数的方法
2015/07/02 PHP
JS 建立对象的方法
2007/04/21 Javascript
js查找父节点的简单方法
2008/06/28 Javascript
JS 常用校验函数
2009/03/26 Javascript
jQuery表格行换色的三种实现方法
2011/06/27 Javascript
jquery如何获取复选框的值
2013/12/12 Javascript
javascript关于open.window子页面执行完成后刷新父页面的问题分析
2015/04/27 Javascript
js判断登陆用户名及密码是否为空的简单实例
2016/05/16 Javascript
Jquery基础之事件操作详解
2016/06/14 Javascript
简单谈谈Vue 模板各类数据绑定
2016/09/25 Javascript
详解使用JS如何制作简单的ASCII图与单极图
2017/03/31 Javascript
详解基于node的前端项目编译时内存溢出问题
2017/08/01 Javascript
jquery实现点击a链接,跳转之后,该a链接处显示背景色的方法
2018/01/18 jQuery
微信小程序 行的删除和增加操作实现详解
2019/09/29 Javascript
vue.js实现h5机器人聊天(测试版)
2020/07/16 Javascript
JavaScript实现网页计算器功能
2020/10/29 Javascript
python处理圆角图片、圆形图片的例子
2014/04/25 Python
Python脚本实现集群检测和管理功能
2015/03/06 Python
Django的数据模型访问多对多键值的方法
2015/07/21 Python
浅谈python数据类型及类型转换
2017/12/18 Python
在dataframe两列日期相减并且得到具体的月数实例
2018/07/03 Python
pandas的相关系数与协方差实例
2019/12/27 Python
Python爬虫抓取指定网页图片代码实例
2020/07/24 Python
基于python模拟bfs和dfs代码实例
2020/11/19 Python
用pushplus+python监控亚马逊到货动态推送微信
2021/01/29 Python
推荐WEB开发者最佳HTML5和CSS3代码生成器
2015/11/24 HTML / CSS
瑞士香水购物网站:Parfumcity.ch
2017/01/14 全球购物
这段代码难道不该打印出56吗
2013/02/27 面试题
茶叶生产计划书
2014/01/10 职场文书
党的群众路线教育实践活动学习笔记
2014/11/05 职场文书
小学毕业感言100字
2015/07/30 职场文书
广播稿:校园广播稿范文
2019/04/17 职场文书
weblogic服务建立数据源连接测试更新mysql驱动包的问题及解决方法
2022/01/22 MySQL