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 相关文章推荐
Excel数据导入Mysql数据库的实现代码
Jun 05 PHP
PHP5中虚函数的实现方法分享
Apr 20 PHP
php urlencode()与urldecode()函数字符编码原理详解
Dec 06 PHP
全新的PDO数据库操作类php版(仅适用Mysql)
Jul 22 PHP
解析Ubuntu下crontab命令的用法
Jun 24 PHP
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
Sep 28 PHP
学习php分页代码实例
Oct 24 PHP
ThinkPHP使用UTFWry地址库进行IP定位实例
Apr 01 PHP
php实现的数字验证码及数字运算验证码
Jul 30 PHP
非常全面的php日期时间运算汇总
Nov 04 PHP
PHP基于回溯算法解决n皇后问题的方法示例
Nov 07 PHP
Yii2框架类自动加载机制实例分析
May 02 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实现的rc4加密解密类定义与用法示例
2018/08/16 PHP
JavaScript 封装Ajax传递的数据代码
2009/06/05 Javascript
jquery的Tooltip插件 qtip使用详细说明
2010/09/08 Javascript
jQueryUI写一个调整分类的拖放效果实现代码
2012/05/10 Javascript
一个可拖拽列宽表格实例演示
2012/11/26 Javascript
javascript去除字符串左右两端的空格
2015/02/05 Javascript
js+jquery常用知识点汇总
2015/03/03 Javascript
浅析BootStrap中Modal(模态框)使用心得
2016/12/24 Javascript
利用策略模式与装饰模式扩展JavaScript表单验证功能
2017/02/14 Javascript
ECMAscript 变量作用域总结概括
2017/08/18 Javascript
Layui数据表格之单元格编辑方式
2019/10/26 Javascript
vue.js中使用微信扫一扫解决invalid signature问题(完美解决)
2020/04/11 Javascript
微信小程序实现分页加载效果
2020/11/19 Javascript
详解Vue2的diff算法
2021/01/06 Vue.js
python使用SMTP发送qq或sina邮件
2017/10/21 Python
python3.5+tesseract+adb实现西瓜视频或头脑王者辅助答题
2018/01/17 Python
在Python文件中指定Python解释器的方法
2019/02/18 Python
Python3实现计算两个数组的交集算法示例
2019/04/03 Python
Flask框架路由和视图用法实例分析
2019/11/07 Python
Python3 获取文件属性的方式(时间、大小等)
2020/03/12 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
2020/11/06 Python
JavaScript获取当前url根目录(路径)
2014/02/19 面试题
大众服装店创业计划书范文
2014/01/01 职场文书
文明社区申报材料
2014/08/21 职场文书
上课随便讲话检讨书
2014/09/12 职场文书
2014年化妆品销售工作总结
2014/12/01 职场文书
班级元旦晚会开幕词
2015/01/29 职场文书
工伤劳动仲裁代理词
2015/05/25 职场文书
酒店开业主持词
2015/07/02 职场文书
css3 实现文字闪烁效果的三种方式示例代码
2021/04/25 HTML / CSS
用CSS3画一个爱心
2021/04/27 HTML / CSS
详解TS数字分隔符和更严格的类属性检查
2021/05/06 Javascript
通过shell脚本对mysql的增删改查及my.cnf的配置
2021/07/07 MySQL
javascript Number 与 Math对象的介绍
2021/11/17 Javascript
十大最强奥特曼武器:怪兽战斗仪在榜,第五奥特之父只使用过一次
2022/03/18 日漫
Python实战实现爬取天气数据并完成可视化分析详解
2022/06/16 Python