Welcome 微信登录

首页 / 网页编程 / PHP

php中获取远程客户端的真实ip地址的方法

php中获取远程客户端的真实ip地址的方法

(1).REMOTE_ADDR:浏览当前页面的用户计算机的ip地址 (2).HTTP_X_FORWARDED_FOR: 浏览当前页面的用户计算机的网关 (3).HTTP_CLIENT_IP:客户端的ip 在PHP 中使用 $_SERVER["REMOTE_ADDR"] 来取得客户端的 IP 地址,但如果客户端是使用代理服务器来访问,那取到的就是代理服务器的 IP 地址,而不是真正的客户端 IP 地址。要想透过代理服务器取得客户端的真实 IP 地址,就要使用...
discuz程序的PHP加密函数原理分析

discuz程序的PHP加密函数原理分析

原理如下,假如: 加密 明文:1010 1001 密匙:1110 0011 密文:0100 1010 得出密文0100 1010,解密之需和密匙异或下就可以了 解密 密文:0100 1010 密匙:1110 0011 明文:1010 1001 并没有什么高深的算法,密匙重要性很高,所以,关键在于怎么生成密匙。 那我们一起看下康盛的authcode怎么做的吧 复制代码 代码如下: // 参数解释 // $strin...
PHP缓存技术的使用说明

PHP缓存技术的使用说明

在大部份情况下我们的网站都会使用数据库作为站点数据存储的容器。当你执行一个SQL查询时,典型的处理过程是:连接数据库->准备 SQL查询->发送查询到数据库->取得数据库返回结果->关闭数据库连接。但数据库中有些数据是完全静态的或不太经常变动的,缓存系统会通过把SQL查询的结果缓存到一个更快的存储系统中存储,从而避免频繁操作数据库而很大程度上提高了程序执行时间,而且缓存查询结果也允许你后期处理。 普遍使用的PHP缓存技术 PHP...
php学习笔记(三)操作符与控制结构

php学习笔记(三)操作符与控制结构

一.字符串插入 为了给开发人员处理字符串值提供最大的灵活性,PHP 为字面插入和内容插入提供了 一种方法。 双引号提供了最大的灵活性,原因是变量和转移序列都会得到相应的解析。 复制代码 代码如下:<?php $userName = "张三"; echo "His name is $userName "; echo "<br />"; //中文会出现一些问题 echo "他的名字叫$userName ,他19岁了,已经长大成人了!"; ec...
判断Keep-Alive模式的HTTP请求的结束的实现代码

判断Keep-Alive模式的HTTP请求的结束的实现代码

所以根据EOF就可判断一次请求的结束,下面的代码(PHP)很常见: 复制代码 代码如下: // $fp是由fsockopen()产生的句柄 while(!feof($fp)) { echo fgets($fp); } (注:短连接模式是在头部用”Connection: close”标示,长连接用”Connection: keep-alive”标示。目前HTTP/1.0默认使用短连接,HTTP/1.1默认使用长连接。) 而长连接(也称持久连接)模式的HTT...
php中Smarty模板初体验

php中Smarty模板初体验

下面介绍一下Smarty模板引擎的特性: 1. 速度:采用Smarty编写的程序可以获得最大速度的提高,这一点是相对于其它的模板引擎技术而言的。 2. 编译型:采用Smarty编写的程序在运行时要编译成一个非模板技术的PHP文件,这个文件采用了PHP与HTML混合的方式,在下一次访问模板时将WEB请求直接转换到这个文件中,而不再进行模板重新编译(在源程序没有改动的情况下) 3. 缓存技术:Smarty选用的一种缓存技术,它可以将用户最终看到的HTM...
ThinkPHP与PHPExcel冲突解决方法

ThinkPHP与PHPExcel冲突解决方法

很早之前就知道有一个叫做PHPExcel的类(官方网站)可以用来操作Excel,一直没有机会尝试,今天试用发现无比强大,下载后的源码包里有详细文档,几乎能实现手工操作Excel能实现的一切功能。 一个简单的读取Excel的例子如下: 复制代码 代码如下: $inputFileType = "Excel2007"; $inputFileName = "./public/files/import_user_template.xlsx"; $sheetname ...
ThinkPHP 防止表单重复提交的方法

ThinkPHP 防止表单重复提交的方法

然而有一种情况,是防止不了的: 用户提交表单以后,点击浏览器后退按钮返回表单页面,这个时候浏览器会直接从缓存中取出页面,因此token验证一定是通不过的。网上有许多种办法可以绕过这个问题,比如用location.replace()方法来替换当前历史记录,但是这样仍然有瑕疵。极端的情况,若用户在页面间切换多次,那么多点几次后退按钮很可能又回到了上一个表单页面。解决办法是在http头中设置Cache-Control: no-cache, no-store。然而...
<< 231 232 233 234 235 236 237 238 239 240 >>