当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP编程常用技巧四则

PHP
详细讲解PHP编程中分页显示的制作
PHP开发技巧:PHP关于图像颜色的操作
PHP程序安全基础:手工php注入总结
PHP动态网页程序中常用的表单验证类
用PHP程序实现支持页面后退的两种方法
PHP代码:基本数据结构和php内置函数
php实现图片远程采集(PHP采集)
巧用PHP记录搜索引擎蜘蛛访问网站的足迹
PHP的常用的几大模板引擎
PHP采集图片实例(PHP采集)
用PHP读取RSS内容,实现与BLOG的同步
php生成静态页面的方法(简单,实用)
PHP+CSS实现打印简单数据报表功能
PHP制作简单的内容采集器实例教程
技巧:使用PHP中的字符串函数
PHP文件或目录权限检查函数
PHP实例——PHP创建动态图像
PHP自定义的加密和解密程序
轻松实现php代码防注入,保护代码安全!
PHP与MySQL中的SQL注入式漏洞

PHP编程常用技巧四则


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 47 ::
收藏到网摘: n/a

PHP编程常用技巧四则:

1.配置PHP文件目录

作为服务器端解释执行的脚本语言,PHP程序放置在某个服务器可以访问的目录下,一般可以通过修改Apache的httpd.conj进行配置,例如我们在该文件中的一句:

Alias/test/"d:brhpwebsitebrhp/"那么在浏览器端输入:“http://localhost/test/+PHP文件名”就可以访问d:brhpwebsitebrhp/下的PHP文件了;可见该行不过是为存放PHP文件的目录起一个别名。

其次,还可以通过指定DocumentRoot路径得到存放服务器文件的目录,在httpd.conj找到以下两行,其中的路径可以随意指定,你的PHP文件也可以放在该目录下,服务器同样可以运行它们,如“http://localhost/+PHP文件名”。

 一般的,将PHP文件放在同一个地方比较好,可以方便管理,而其他文件放在另外一个地方。



DocumentRoot"C:/usr/bin/html/"

2.服务器端目录的索引文件

在httpd.conj中,有一行:DirectoryIndexindex.html

该行指定目录默认打开文件为index.html,当访问某个目录时,服务器就会自动查找index.html,若果不存在,则显示目录中的所有文件列表,默认打开文件可以改为别的,如index.php3等等,但是也许我们有很多目录,无论是存放图片,文本等资料的,还是存放PHP文件或别的文件的目录,我们并不希望用户能看到目录中的文件列表,在httpd.conj中指定了一个.htacess文件,该文件产生一个目录索引文件,例如我们用写字板建立一个.htacess文件:

#.htacess#

DirectoryIndexerror_open.php

再建立一个错误警告文件:

#error_open.php#

其中的error_open.php为权限错误警告文件,将此2文件放在所有保护目录下,当用户企图打开目录时,自动转向执行error_open.php,显示错误警告。
3.目录删除巧实现

我们知道,PHP4for/win32中有个rename()函数可以支持对目录/文件进行重命名,如:rename(oldpath,newpath)//oldpath为文件或目录原来路径;//newpath为新定义路径;

实现将oldpath改名为newpath。

PHP4中没有删除目录/文件的函数,怎么作到删除呢?我们知道,php.ini中有一行用来完成HTTP上传操作的临时文件目录配置行:upload_tmp_dir=;

PHP4支持该临时目录的配置(PHP3不支持),当上载操作完成则自动清空临时目录,好了,用它我们可以巧妙的实现文件/目录的删除,比如设置:upload_tmp_dir="d:brhpwebsitebrhp/tmp/";要删除某个目录path,执行:tmp="d:brhpwebsitebrhp/tmp/;"rename(path,tmp)?>;

那么文件或目录path改名为tmp后,tmp目录下的所有文件/目录自动清除,就完成了删除操作。

4.快速建立MySql数据库表

PHP和MySql数据库达到了完美结合,在网页上,比如在论坛或书屋发表作品的新用户,我们要把他的言论信息在线写入数据库中,往往要在相应的数据库中为该用户新建一个数据表。win32下建立新的MySQL空数据库很简单,只要在“/mysql/data/”目录下建立一个文件夹,如:"/usrinfo/",就可以了。而向库中增添新表可通过以下程序实现:
#connect.mysql--连接数据库#

connection=mysql_connect();
mysql_select_db("usrinfo",connection);
?>;
#make.php--建立如下结构的,以用户名为表名的数据表#
//调用connect.mysql
require("connect.mysql");
//检查以用户名为表名的数据表存在否?query="selectcount(*)fromusrname";
result=mysql_db_query(query);
//不存在则创建,如存在就是老用户;
if(!result)
{mysql_query("
createtableusrname(
idtinyint(6),
titletext,
bodylongtext,
dateofdate;
timeoftime;)")ordie(mysql_error());
}
//此处为向数据表插入新的数据部分
?>