PHP - 文章列表
-
PHP和XSS跨站攻击
其实这个话题很早就想说说了,发现国内不少PHP站点都有XSS漏洞。今天偶然看到PHP5的一个XSS漏洞,在此小结一下。顺便提醒,使用PHP5的朋友最好打下补丁,或者升级一下。\n如果你不懂什么是XSS,可以看这里,或者这里(中文的也许会好懂一些)。\n国内不少论坛都存在跨站脚本漏洞,例如这里 有一个Google Hack+XSS的攻击例子,针对的是Discuz 4.0.0RC3。国外也很多这样的例子,甚至Google也出现过,不过在12月初时修正了。跨站攻击很容易就可以构造,而且非常隐蔽,不易被查觉(通常盗取信息后马上跳转回原页面)。如何攻击,在此不作说明(也不要问我),主要谈谈如何防范。首
-
PHP实现简单线性回归之数学库的重要性
简介 与其它开放源码语言(比如 Perl 和 Python)相比,PHP 社区缺少强有力的工作来开发数学库。 造成这种状况的一个原因可能是由于已经存在大量成熟的数学工具,这可能阻碍了社区自行开发 PHP 工具的工作。例如,我曾研究过一个功能强大的工具 S System,它拥有一组令人印象深刻的统计库,专门被设计成用来分析数据集,并且在 1998 年由于其语言设计而获得了 ACM 奖。如果 S 或者其开放源码同类 R 仅仅是一个 exec_shell 调用,那么为何还要麻烦用 PHP 实现相同的统计计算功能呢?有关 S System、它的 ACM 奖或 R 的更多信息,请参阅相关参考资料。
-
如何在十天内学会php之第十天
学习目的:学会用PHP上传文件和发邮件 上传文件表单必须加上 enctype=”multipart/form-data” 和 <input type=”file” name=”file”> 下面看一下代码: f=&HTTP_POST_FILES[\"file\"]; dest_dir=’uploads’;//设定上传目录 dest=dest_dir.’/’.date(“ymd”).”_”.f[\"name\"];//我这
-
用PHP发电子邮件
一个发送E-MAIL的脚本也许是你能够在Web 站点上找到的最普通的脚本之一了,虽然它很简单,一个邮件脚本有时会令程序员非常沮丧.PHP中有一个叫做mail()的函数,它只需要知道接收方的地址和信件主体就可以发送邮件,但是要让mail()按你的意思运行你还需要解决一些棘手的问题. \n要使mail()能够运行,你必须有一个SMTP服务器以便PHP能够连接上去.不管这个服务器对邮件程序多么重要,大多数人对它如何运转没有一星半点的概念.在本教程中,我们将揭示SMTP的秘密并解决一些使用PHP发送邮件的常见问题.而本文中的另一些主题将包括循环遍历一个地址列表的方法以及同时以文本和HTML格式向接收者
-
PHP+MySQL分页显示示例分析
Web开发是今后分布式程式开发的主流,通常的web开发都要涉及到与数据库打交道,客户端从服务器端读取通常都是以分页的形式来显示,一页一页的阅读起来既方便又美观。所以说写分页程序是web开发的一个重要组成部分,在这里,我们共同来研究分页程序的编写。 一、分页程序的原理 分页程序有两个非常重要的参数:每页显示几条记录(pagesize)和当前是第几页(page)。有了这两个参数就可以很方便的写出分页程序,我们以MySql数据库作为数据源,在mysql里如果要想取出表内某段特定内容可以使用的 T-SQL语句:select * from table limit offset,rows来实现。这里
-
PHP脚本的8个技巧(3)包含文件
如果你目前着手的Web站点开发项目规模较大,那你对代码重用必定深有体会,比方说,不管是HTML还是PHP代码块,只要项目足够大,比如有1000个Web页,你即便是一年只修改一次包含版权信息的页脚也会让你痛不欲生。 而PHP可以通过一些函数帮助你重用代码,你要具体用到的函数依赖于你打算重用的内容。 主要的函数是: * include() 和 include_once() * require() 和require_once() include()函数包含给定的文件,比如: include(‘/home/me/myfile’); 包含文件中的任何代码都将在include()
-
自定义PHP分页函数
每次编写列表性质的页面,几乎都要写上一段分页的程序。最近小阳终于决心一劳永逸——自定义一个分页函数,并保存在“pageft.php”文件里。要用到分页的地方,就直接包含“pageft.php”文件,并调用这个函数就行了。小阳在编写这个函数时,尽量注意了程序的可移植性和易用性,下面就是小阳编写的函数:\n<?//为了避免重复包含文件而造成错误,加了判断函数是否存在的条件:if(!function_exists(pageft)){ //定义函数pageft(),三个参数的含义为://totle:信息总数;//displaypg:每页显示信息数,这里设置为默认是20;//url:分页导航中的链
-
PHP脚本的8个技巧(4)动态创建图象
在安装了某些第三方函数库之后,结合你的图形处理技能,你就可以用PHP创建和处理图像了。事实上,你也不需要太高的几何学知识。我在中学的时候这门功课总是不及格,现在不也照样会用PHP创建图像!在使用基本的图像创建函数之前,你需要安装GD库。如果要用到和JPEG相关的图像创建函数你还需要安装jpeg-6b。在图像中使用Type 1字体的时候还必须安装t1lib。 在这里,你还需要对你的系统进行进一步地调整。首先,你必须安装t1lib以提供图象处理支持,接下来要安装jpeg-6b。第三步是安装GD函数库。你得按顺序做完这三件工作,原因是你需要编译GD库才能使用jpeg-6b库,如果jpeg-6b步首先
-
PHP连接MYSQL的两种方法
mysql可通过两种方式通过PHP与web相连,一种通过php的mysql相关函数,另一种通过php的ODBC相关函数 相关函数如下: MYSQL函数 mysql_affected_rows: 得到 MySQL 最后操作影响的列数目。 mysql_close: 关闭 MySQL 伺服器连线。 mysql_connect: 开启 MySQL 伺服器连线。 mysql_create_db: 建立一个 MySQL 新资料库。 mysql_data_seek: 移动内部传回指标。 mysql_db_query: 送查询字串 (query) 到 MySQL 资料库。 mysql_drop_db: 移除资
-
PHP脚本的8个技巧(5)采用PHP的用户认证
如果你希望在每一个脚本的基础上实现口令保护功能,那么你可以联合使用header()函数和PHP_AUTH_USER、PHP_AUTH_PW全局变量来创造一个基本的认证方案。通常的、基于服务器的认证请求/响应回合很象下面这个样子: 1.用户向一台Web服务器请求一个文件。如果文件在一个受到保护的区域以内,服务器就在响应的文件头内加上401(非法用户)字符串作为回应。 2.浏览器看见该响应之后就弹出用户名/口令对话框。 3.用户在对话框中输入用户名和口令,然后单击“确认”按钮把这些信息送回到服务器。 4.如果用户名和口令有效,被保护的文件将对用户显示,并且,只要现在经过证实的用户一直在保护区域以内