2024年5月8日发(作者:)
维普资讯
电脑知识与技术 ・・・・・・研究开发・
使用PH P和MySQL进行Web开发
张丽
(江苏广播电视大学武进学院,江苏常州213161)
摘要:介绍了PHP和MySQL的基本知识和优点。描述了PHP访问MySQL数据库的几个函数,并通过编写一个典型的用户登录程
序来阐述其访问过程
关键词:PHP:MySQL
中图分类号:TP31 1 文献标识码:A 文章编号:1009—3044(2006)26一O185一O2
ZHANG Li
Use PHP and MySQL to do Development on Web
(Jiangsu TV University,Changzhou 213161,China)
Abstract:Introduce the Basic knowledge and advantages of PHP and MySQL.elaborate the method of visit the MySQL database,introduce
the visit process by writing a typical procedure of customer register.
Key words:PHP;MySQL
1 PHP介绍
PHP(Personal Home Page)是_种服务器端脚本语言,它是专
门为Web而设计的。它最初是Rasmus Lerdorf在1994年开发的,
l995年以Personal Home Page Tools(PHP Tools1开始对外发表第
database是一个给出要访问的数据库名称的字符串。
mysql
query fquery):送出query字符串以帮助MySQL做相关
_
的处理或执行,如插入,修改,删除等,query是一个包含要执行的
查询的字符串
mysql
fetch
_
_
个版本,同年第二版的PHP问市,版定名为PHP/FI(Form Inter.
preter)。1997年,开始了第三版的开发计划,开发小组加入了Zeev
一
row fresult):用来将查询结果result单行移到数
组变量中。数组的索引是数字索引,第一个索引值是0,result是
mysql
query0I ̄结果。
_
Suraski及Andi Gutmans,第三版就定名为PHP3。PHP的第四代
Zend核心引擎已经进入测试阶段。经历了四次非常重要的重新编
写,才变成了我们今天所看到的广为使用的,成熟的PHP。截止
2006年3月,PHP已经在全球的2300多万个网站域中安装.而且
Mysql
close0:关闭一个到MySQL服务器的连接,不需参数。
—
4典型的用户登录程序的一部分源代码
首先建立数据库xallxa和数据表user,数据表SQL语句如
下:
数字还在不断的快速增长。同时,PHP的源代码完全公开,随着新
函数库的不断增加.使PHP无论在Unix还是Win32的平台上都
可以有更多新的功能。如今,PHP已发展至5.1版。在语法方面,
CREATE TABLE user (
UserID INT NOT NULL AUTO
INCREMENT PRIMARY
PHP混合了C、Perl、Java以及PHP以前版本的优点,它相当于
Script与CGI的结合语言,但是其执行将效率却比CGI更好,程序
KEY,
User
Name VARCHAR(50)NOT NULL,
编写也比HTML更便利且更富有弹性,程序的安全性及保密性也
比Script好。在函数支持方面,PHP几乎覆盖了Web应用的各个
User
PassWord VARCHAR(50)NOT NULL,
1 ENGINE=innodb;
方面,其中最有特色的是数据库函数,使用PHP完成一个含有数
据库功能的网页非常简单。PHP支持的数据库也非常丰富,目前
包括:MySQL、Informix、Sybase、mSQL、Oracle等。
再用HTML建一个登录页面和PHP写登录验证和访问
MySQL
<?PHP
2 MvSQL介绍
MySQL是一个健壮、快速和易用.且支持多线程、多用户的
i ̄isset(¥POST[ Login 1))
{¥User_Name=S_POST[ User_Name 】;
¥Uset:PassWord=¥POST[ Uset PassWrod 1;
SQL数据库服务器。对于开发数据驱动的网站而言,选择MySQL
应该说是最佳组合,这不仅因为MySQL是免费的,更在于它具有
许多同大型数据库相媲美甚至超过它们的优良性能,如性能方
面,它的速度是非常快的,在http://web.mysq1.com/benchmark.html
可以找到许多开发人员的测评页面.从这次测评中可以看到
¥conn=mysql connect(”localhost”,”root”,””)://连接服务器
mysqlselect
db(”sslunwen",¥conn);//选择数据库sslunwen
_
¥query=”selecet User PassWord form user where Us—
//
er Name= ¥User
Name
”: 查询语句
¥result:mysql
query(¥query);//执行SQL查询语句
¥num=mysql_num_rows(¥msult);//共有多少条记录
if(Snum>=l1//ll有这个用户名
fSrow=mysql_fetch—row(Sresult);//用来将查询结果result单
行移到数组变量Srow中
_
MySQL的运行速度比其他竞争产品如PostgreSQL,SQL Server和
Oracle要快很多:可移植性方面,MySQL可以在许多不同的UNIX
系统中使用,同时也可以在Windows系统中使用;源代码方面,和
PHP一样.我们可以获得并修改MySQL的源代码。在MySQL 5.0
还增加了很多新的功能,如存储过程.对游标,对子查询的支持
等。
if(strcmp(¥User_PassWord.Srow[0])==01
fecho”登录成功,欢迎您的到来”;
}else{echo”您的密码不准确,请重新填写”;
))else{echo”没有这个用户名,请重新填写”;
lmysql
close0;//关闭SQL服务器
3 PHP实现对MySQL数据库的访问
利用PHP的数据库函数连接,主要用到四个数据库函数:
mysql f
name
,
er
, ):建立与
MySQL connect host usname password
1 7>
服务器的连接.hostname是MySQL服务器的主机名,username是
MySQL用户ID;password是与用户ID相关的MySQL密码。
mysqlselect
db(database):选择MySQL服务器中的数据库,
—_
<html><head><title>用户登录</title>
</head><body>
<form id=”form 1”name=”form 1”method=”post”action=”login
php”>
收稿日期:2006一f)6—28
作者简介:张丽(1977-),女,江苏常州人,助教,研究方向:计算机网络开发。
185
维普资讯
、
.
研究开发......
用户名:<input type=”text”name=”User__Name”/><br,>
密码:<input type=”text”name=”User
__
PassWord’’/><br,>
<input type=”submit”name=”Login”value=”登录”><br,>
</form></body></html>
5结束语
PHP和MySQL凭借着开发容易,开发成本底,功能强大等因
素已经得到了广大网络开发者的青睐,不过一些程序员缺少团队
合作,都单枪匹马干,很少和别人分享心得,还有不少人对源码进
(上接第97页)
最小的阈值就是最优结果。 通过白适应阈值分割.把肤色概率图
像变换为二值图像,肤色点为1,其
他像素点为0。实现了一个皮肤分
类器。图4为二值化以后的图像。
确定人脸区域所采用的方法是
在二值图像中,统计每一列像素为
1的个数,找到最大值maxCount,并
记录该列的序号j,然后从j列开始
图4二值化图像
逐渐减小列的序号.直到有一列的
为1像素点的个数小于0_3倍的
maxCount,该列即位人脸区域的左边界,如果直到列号减为0仍
不满足条件,则人脸区域左边界为图像的左边界。同理,从i列开
始逐渐增加列的序号,可以找到人脸区域的右边界。在人脸区域
的左右边界间,从图像第一行开始统计值为1的像素点的个数,
大于0.5倍左右边界差值的行即为人脸区域的上边界,根据人脸
的长宽比例,我们取长为宽的1.0倍.这样可以确定下边界,从而
确定了整个人脸区域(图5),标定人脸区域时,在四个方向均放大
一
定比例,以便将耳朵和头发包括在内。在系统实际运行时,因为
司机距离摄像头的位置大致固定,人脸的区域不会太大或太小,
超出区域即认为图像中没有人脸(司机不在座位)。
5双眼模板匹配
基于模板匹配的方法是在图像
国
灰度的层次上直接比较目标模板和
候选图像区域之间的相似性。我们在
已经确定的人脸区域上运用双眼模
板来判断司机的工作状态。模板是通
过对多个样本取平均构造出来的。首
先在选取的样本图像上手工划出双
图5标定人脸区域
眼的区域作为双眼的样本 由于各个
样本的灰度分布各不相同.进行灰度
分布标准化后作为双眼模板。我们考虑表征图像灰度分布的两个
参量——灰度的均值和方差,将它们调整到给定值.消除图像采
集时光照的影响。
将图像看作二维矩阵D[W]【H】,W和H分别为图像的宽度和
高度,则均值和方差表示如下:
’
"l
D[j][ 】
否否‘D 一 f41
对于输入的样本图像,为了将其灰度均值和方差变换到给定
的灰度平均值 和叮。方差,对每一个像素点的灰度值进行如下
变换:
D【i】【j】: (D[i】【j卜I)+
0 i W。0 H (5)
假设双眼模板的灰度矩阵为rr【MⅡN],灰度均值为 ,均方差
为叮T,人脸区域的灰度矩阵为R【MJ【NJ,灰度均值为 ,均方差为
叮n,它们之间的相关系数r(T,R)和对应像素灰度值的平均偏差dff,
1116 电脑知识与技术
电脑知识与技术
行加密,以至形成闭关自守的局面。故要提高PHP,就应该多多交
流,资源共享,这样在未来的几年内,必将成为主流的脚本语言。
参考文献:
『1]Bill McCany.PHP开发指南.
【2]Luke Welling,Laura Thomson.PHP和MySQL Web开发.
『3]Marc Wandschneider.PHP和MySQL Web应用开发核心技
术.
R1如下所示
l 1N.1
∑∑cr[1】【j卜所)(R[I】【j卜 )
=
,
d(T,R)=
r(T,R)越大表示模板与输入图像区域的匹配程度越高,d(T,R1
则相反。二者综合起来作为匹配程度的度量:
D(T,R)=r(T,R)+ (8)
l十o(i, J
为权重系数,为了使前后两部分的量值相当,根据实验数据
取35。在人脸区域用模板进行匹配,计算D(T,R)的最大值,假设模
板大小为M*N,人脸区域大小为S*K。则需要进行(S—M+1) (K—N+
1)次运算。根据实验设定一个阈值,如果D(T,R)大于阈值,则说明
人眼是睁开的,反之,则是闭合的(司机没有正视前方)。
6特殊情况处理
对夜间图像,由于行车时驾驶室无光源,仅有各仪表盘的微
弱光线.摄像头自身进行光线补偿.采集到的图像自动变为灰度
图像,这种灰度图像与真实情况失真很大,无法进行人脸检测。机
车驾驶室背景比较单一,本系统采用的方法是对图像先进行滤
波,然后每一帧图像与其前一帧进行差分处理。通过大量实验观
察,选定一个阈值,统计大于阈值的像素点的个数。通过这个数值
判断司机是否在操作
7结束语
本文提出设计了一个司机工作状态检测的系统。该系统在白
天采用肤色模型检测人脸,用双眼模板判断工作状态,在夜间采
用差分图像进行检测,现场实际运行稳定,误报率低。
下一步的工作是提高夜间图像的处理,研究光照变化明显的
人脸检测问题,以降低误报率。
下面几幅图像是我们在现场采集的图像,检测结果如图6:
图6现场图像
参考文献:
【1]Yang M H,Kriegman D,Ahuja N.Detecting faces in images a
survey[J].IEEE Trans.PAMI,20o2,24(1):34—58.
【2]Jure Kovac,Peter Peer,Franc Solnia 【J]、Human skin color
clustering for face detection.Faculty of Computer and Information
Science.2003.144—148.
【3]FENG G C,YUEN P C.Muti-cues eye detection on gray in・
tensity image【J].Pauern Recognition,2001,34(5):1033—1046.
[4】梁路宏,艾海舟.人脸检测综述[J】.计算机学报,2002,5(25).
【5】衣晓飞'陈福接.单人图像中人眼的快速定位【J].计算机工程
与科学,2001。25(2):18—21. ・
发布者:admin,转转请注明出处:http://www.yc00.com/web/1715137591a2571706.html
评论列表(0条)