2019/9/151Php动态网站设计与应用段克奇Sea_coral@163.com本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|第四讲Php常用交互技术•1.操作表单•2.?传值•3.获取客户端IP、OS、IE•4.cookie技术•5.上传文件•6.发送邮件本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|第四讲Php常用交互技术•1.操作表单•$_POST[“”]数组•$_GET[“”]数组–比如:form.htmlFORMMETHOD=POSTACTION=result.php用户名称:INPUTTYPE=textNAME=useridBR用户口令:INPUTTYPE=passwordname=pwdBR用户爱好:INPUTTYPE=checkboxNAME=ah[]value=film1电影1INPUTTYPE=checkboxNAME=ah[]value=film2电影2INPUTTYPE=checkboxNAME=ah[]value=film3电影3INPUTTYPE=checkboxNAME=ah[]value=film4电影4INPUTTYPE=submitINPUTTYPE=reset/FORM本资料由-大学生创业|创业|创业网提供资料在线代理|网页代理|代理网页|减肥药排行榜|淘宝最好的减肥药|什么减肥药效果最好|减肥瘦身药|第四讲Php常用交互技术•1.操作表单–这是result.php页面的处理代码:?php$userid=$_POST[userid];$pwd=$_POST[pwd];$ah=$_POST[ah];//成为数组$num=count($ah);//统计爱好的个数?用户名称:?phpecho$userid;?br用户口令:?phpecho$pwd;?br用户爱好:一共有?phpecho$num;?个爱好!分别如下:p?phpforeach($ahas$r){echo$r.br;}?注意:这两个基本的数组只能用大写字母:错误:$_get[]$post[]2019/9/155第四讲Php常用交互技术•2.?传值–这个操作和asp环境完全相同,举例说明2019/9/156第四讲Php常用交互技术•3.获取客户端IP、OS、IE?phpecho$_SERVER[REMOTE_ADDR];echop;echo$_SERVER[HTTP_USER_AGENT];//可以用split()函数隐藏ip的某一位.?2019/9/157第四讲Php常用交互技术•3.获取客户端IP、OS、IE•functionos($text)•{•if((strstr($text,NT5.2))!=)•$system=Windows2003;•elseif((strstr($text,NT5.1))!=)•$system=WindowsXP;•elseif((strstr($text,NT5))!=)•$system=Windows2000;•elseif((strstr($text,NT4))!=)•$system=WindowsNT4;•elseif((strstr($text,NT4.9))!=)•$system=WindowsME;•elseif((strstr($text,98))!=)•$system=Windows98;•elseif((strstr($text,95))!=)•$system=Windows95;•else•$system=未知;•return$system;•}2019/9/158第四讲Php常用交互技术•3.获取客户端IP、OS、IE•functionbrowser($text)•{•if((strstr($text,MSIE6.0))!=)•$r=InternetExplorer6.0;•elseif((strstr($text,MSIE5.5))!=)•$r=InternetExplorer5.5;•elseif((strstr($text,MSIE5.01))!=)•$r=InternetExplorer5.01;•elseif((strstr($text,MSIE5.0))!=)•$r=InternetExplorer5.00;•elseif((strstr($text,MSIE4.0))!=)•$r=InternetExplorer4.01;•else•$r=未知;•return$r;•}2019/9/159第四讲Php常用交互技术•3.获取客户端IP、OS、IE•?php•//***********调用方法*******************•echo$_SERVER[REMOTE_ADDR];•echop;•echo$_SERVER[HTTP_USER_AGENT];•echop;•echoos($_SERVER[HTTP_USER_AGENT]);•echop;•echobrowser($_SERVER[HTTP_USER_AGENT]);•?2019/9/1510第四讲Php常用交互技术•4.Cookie技术应用:•Cookie是用户访问网站时,由web服务器在客户端磁盘上写入的一些小文件,用于记录浏览者的一些个人信息以及所做的操作信息。在需要时你可以像使用一般变量一样方便的使用cookie。•Cookies由函数setcookie()设定。与输出HTTP标头的函数header()一样,setcookie()必须在任何实际内容杯输出到浏览器之前调用。在php环境下设置cookie变量的语法如下:setcookie(“变量名称”,变量结果,有效期)比如:setcookie(“num”,1,time()+10)意思为声明一个cookie变量num结果为1,有效期为10秒。//time()函数返回自1970年1月1日以来的以秒数计的时间2019/9/1511第四讲Php常用交互技术•4.Cookie技术应用:•通常是使用Time()和Mktime()来设置cookie变量的寿命,从而避免浏览器关闭时,cookie变量的终止。•Time()函数用来确定当前时间,秒为单位,比如:?phpechotime();?一般用此函数设置cookie终止的相对时间;比如:setcookie(“num”,1,time()+10)//表示相对于当前时间10秒后失效•Mktime()–Mktime(hour,minute,second,month,day,year)–比如:mktime(0,0,0,7,1,2005)表示2005-7-100:00:00一般用此函数设置cookie终止的绝对时间;比如:setcookie(“num”,1,mktime(0,0,0,7,1,2005))//表示绝对在2005-7-100:00:00后失效2019/9/1512第四讲Php常用交互技术•4.Cookie技术应用:•访问cookie:–在php中,设置cookie后,不能再相同的请求中访问cookie。而在设置完后,需要重载网页才可以正常访问。–Isset()函数:用于确定变量是否被设置,如已经设置,返回true,否则返回false;–Empty()函数:–Header()函数:网页重定向header(location:form.php?message=不能为空!);用$_COOKIE[“”]数组来接收cookie变量中的结果。比如:$num=$_COOKIE[“num”];//表示接收上述设置的cookie变量2019/9/1513第四讲Php常用交互技术•4.Cookie技术应用:一个简单的计数器例子:?if(isset($_COOKIE[num]))Setcookie(num,$_COOKIE[num]+1,time()+60);elseSetcookie(num,1,time()+60);echo$_COOKIE[num];?//也可以结合前面讲的图形计数器效果改成图形效果。//下面再举一个用户登陆用cookie变量记录用户信息的例子。2019/9/1514第四讲Php常用交互技术•5.php上传文件处理:php上传文件是使用php环境中的全局变量$_FILES来完成的,全局变量$_FILES自PHP4.1.0起存在,此数组包含有所有上传的文件信息。(在更早的版本中用$HTTP_POST_FILES替代)。可以如下建立一个特殊的表单来支持文件上传:formenctype=multipart/form-dataaction=upload.phpmethod=POST选择上传文件:inputname=uploadfiletype=fileinputtype=submitvalue=上传/form注:要确保文件上传表单的属性是enctype=“multipart/form-data”,否则文件上传不了。•以上范例中$_FILES数组的内容如下所示。我们假设文件上传字段的名称如上例所示,为uploadfile。名称可随意命名。$_FILES[“uploadfile”][name]客户端机器文件的原名称。$_FILES[“uploadfile”][size]已上传文件的大小,单位为字节。$_FILES[“uploadfile”][tmp_name]文件被上传后在服务端储存的临时文件名。$_FILES[“uploadfile”][error]和该文件上传错误代码。在PHP4.2.0新增的。$_FILES[“uploadfile”][type]文件的MIME类型。[如果浏览器提供此信息的话。一个例子是“image/gif”。不过此MIME类型在PHP端并不检查,因此不要想当然认为有这个值。]注:上述代码中的[name][size][tmp_name][error][type]都是关键字,不能拼写出错。2019/9/1515第四讲Php常用交互技术•5.php上传文件处理:•以上范例中$_FILES数组的内容如下所示。我们假设文件上传字段的名称如上例所示,为uploadfile。名称可随意命名。$_FILES[“uploadfile”][name]客户端机器文件的原名称。$_FILES[“uploadfile”][size]已上传文件的大小,单位为字节。$_FILES[“uploadfile”][tmp_name]文件被上传后在服务端储存的临时文件名。$_FILES[“uploadfile”][error]和该文件上传错误代码。在PHP4.2.0新增的。$_FILES[“uploadfile”][“type”]文件的MIME类型。如果浏览器提供此信息的话。一个例子是“image/gif”。不过此MIME类型在PHP端并不检查,因此不要想当然认为有这个值。注:上述代码中的[“name”][“size”][“tmp_name”][“error”][“type”]都是关键字,不能拼写出错。文件被上传后,默认地会被储存到服务端的默认临时目录中,即php.ini中的upload_tmp_dir设置的路径下。2019/9/1516第四讲Php常用交互技术•5.php