php培训讲义4 Php常用交互技术课件_第1页
php培训讲义4 Php常用交互技术课件_第2页
php培训讲义4 Php常用交互技术课件_第3页
php培训讲义4 Php常用交互技术课件_第4页
php培训讲义4 Php常用交互技术课件_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Php动态网站设计与应用段克奇Sea_coral@163.com12/29/20221Php动态网站设计与应用段克奇12/22/20221第四讲Php常用交互技术1.操作表单2.?传值3.获取客户端IP、OS、IE4.cookie技术5.上传文件6.发送邮件12/29/20222第四讲Php常用交互技术1.操作表单12/22/20222第四讲Php常用交互技术1.操作表单$_POST[“”]数组$_GET[“”]数组比如:<form.html><FORMMETHOD="POST"ACTION="result.php">用户名称:<INPUTTYPE="text"NAME="userid"><BR>用户口令:<INPUTTYPE="password"name="pwd"><BR>用户爱好:<INPUTTYPE="checkbox"NAME="ah[]"value="film1">电影1<INPUTTYPE="checkbox"NAME="ah[]"value="film2">电影2<INPUTTYPE="checkbox"NAME="ah[]"value="film3">电影3<INPUTTYPE="checkbox"NAME="ah[]"value="film4">电影4<INPUTTYPE="submit"><INPUTTYPE="reset"></FORM>12/29/20223第四讲Php常用交互技术1.操作表单12/22/20223第四讲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[""]12/29/20224第四讲Php常用交互技术1.操作表单12/22/20224第四讲Php常用交互技术2.?传值这个操作和asp环境完全相同,举例说明12/29/20225第四讲Php常用交互技术2.?传值12/22/20225第四讲Php常用交互技术3.获取客户端IP、OS、IE<?phpecho$_SERVER["REMOTE_ADDR"];echo"<p>";echo$_SERVER["HTTP_USER_AGENT"];//可以用split()函数隐藏ip的某一位.?>12/29/20226第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲Php常用交互技术3.获取客户端IP、OS、IEfunctionos($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; }12/29/20227第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲Php常用交互技术3.获取客户端IP、OS、IEfunctionbrowser($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;}12/29/20228第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲Php常用交互技术3.获取客户端IP、OS、IE<?php//***********调用方法*******************echo$_SERVER["REMOTE_ADDR"];echo"<p>";echo$_SERVER["HTTP_USER_AGENT"];echo"<p>";echoos($_SERVER["HTTP_USER_AGENT"]);echo"<p>";echobrowser($_SERVER["HTTP_USER_AGENT"]);?>12/29/20229第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲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日以来的以秒数计的时间12/29/202210第四讲Php常用交互技术4.Cookie技术应用:12/第四讲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后失效12/29/202211第四讲Php常用交互技术4.Cookie技术应用:12/第四讲Php常用交互技术4.Cookie技术应用:访问cookie:在php中,设置cookie后,不能再相同的请求中访问cookie。而在设置完后,需要重载网页才可以正常访问。Isset()函数:用于确定变量是否被设置,如已经设置,返回true,否则返回false;Empty()函数:Header()函数:网页重定向header("location:form.php?message=不能为空!");用$_COOKIE[“”]数组来接收cookie变量中的结果。比如:$num=$_COOKIE[“num”];//表示接收上述设置的cookie变量

12/29/202212第四讲Php常用交互技术4.Cookie技术应用:12/第四讲Php常用交互技术4.Cookie技术应用:一个简单的计数器例子:<?if(isset($_COOKIE["num"]))Setcookie("num",$_COOKIE["num"]+1,time()+60);elseSetcookie("num",1,time()+60);echo$_COOKIE["num"];?>//也可以结合前面讲的图形计数器效果改成图形效果。//下面再举一个用户登陆用cookie变量记录用户信息的例子。12/29/202213第四讲Php常用交互技术4.Cookie技术应用:12/第四讲Php常用交互技术5.php上传文件处理: php上传文件是使用php环境中的全局变量$_FILES来完成的,全局变量$_FILES自PHP4.1.0起存在,此数组包含有所有上传的文件信息。(在更早的版本中用$HTTP_POST_FILES替代)。可以如下建立一个特殊的表单来支持文件上传:<formenctype="multipart/form-data"action="upload.php"method="POST">选择上传文件:<inputname="uploadfile"type="file"><inputtype="submit"value="上传"></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"]都是关键字,不能拼写出错。12/29/202214第四讲Php常用交互技术5.php上传文件处理:12/2第四讲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设置的路径下。12/29/202215第四讲Php常用交互技术5.php上传文件处理:12/2第四讲Php常用交互技术5.php上传文件处理:表单接收页面upload.php<?php$t=0;/*设置超时限制时间缺省时间为30秒设置为0时为不限时*/set_time_limit($t);$uploadfile="upload/".($_FILES["uploadfile"]["name"]);if(move_uploaded_file($_FILES["uploadfile"]["tmp_name"],$uploadfile)){ echo"文件上传成功!<ahref='javascript:history.back();'>返回</a>\n"; ?> <scriptlanguage="vbscript"> window.parent.form1.photo.value="<?phpecho$uploadfile?>" </script> <?php}else{ echo"文件上传失败!<ahref='javascript:history.back();'>返回</a>";}?>12/29/202216第四讲Php常用交互技术5.php上传文件处理:12/2第四讲Php常用交互技术5.php上传文件处理:

接受上传文件的PHP脚本为了决定接下来要对该文件进行哪些操作,应该实现任何逻辑上必要的检查。例如可以用$_FILES['userfile']['size']变量来排除过大或过小的文件,也可以通过$_FILES['userfile']['type']变量来排除文件类型和某种标准不相符合的文件,但只把这个当作一系列检查中的第一步,因为此值完全由客户端控制而在PHP端并不检查。如果表单中没有选择上传的文件,则PHP变量$_FILES['userfile']['size']的值将为0,$_FILES['userfile']['tmp_name']将为空。如果该文件没有被移动到其它地方也没有被改名,则该文件将在表单请求结束时被删除。12/29/202217第四讲Php常用交互技术5.php上传文件处理:12/2第四讲Php常用交互技术6.发送邮件:mail()函数:<?phpif(mail($recipient,$subject,$message))echo"success!“;elseecho"failue!";/*$recipient:接收email地址$subject:主题$message:内容*/?>12/29/202218第四讲Php常用交互技术6.发送邮件:12/22/202第四讲Php常用交互技术总结:熟练掌握php的各种交互操作技术12/29/202219第四讲Php常用交互技术总结:12/22/202219演讲完毕,谢谢观看!演讲完毕,谢谢观看!Php动态网站设计与应用段克奇Sea_coral@163.com12/29/202221Php动态网站设计与应用段克奇12/22/20221第四讲Php常用交互技术1.操作表单2.?传值3.获取客户端IP、OS、IE4.cookie技术5.上传文件6.发送邮件12/29/202222第四讲Php常用交互技术1.操作表单12/22/20222第四讲Php常用交互技术1.操作表单$_POST[“”]数组$_GET[“”]数组比如:<form.html><FORMMETHOD="POST"ACTION="result.php">用户名称:<INPUTTYPE="text"NAME="userid"><BR>用户口令:<INPUTTYPE="password"name="pwd"><BR>用户爱好:<INPUTTYPE="checkbox"NAME="ah[]"value="film1">电影1<INPUTTYPE="checkbox"NAME="ah[]"value="film2">电影2<INPUTTYPE="checkbox"NAME="ah[]"value="film3">电影3<INPUTTYPE="checkbox"NAME="ah[]"value="film4">电影4<INPUTTYPE="submit"><INPUTTYPE="reset"></FORM>12/29/202223第四讲Php常用交互技术1.操作表单12/22/20223第四讲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[""]12/29/202224第四讲Php常用交互技术1.操作表单12/22/20224第四讲Php常用交互技术2.?传值这个操作和asp环境完全相同,举例说明12/29/202225第四讲Php常用交互技术2.?传值12/22/20225第四讲Php常用交互技术3.获取客户端IP、OS、IE<?phpecho$_SERVER["REMOTE_ADDR"];echo"<p>";echo$_SERVER["HTTP_USER_AGENT"];//可以用split()函数隐藏ip的某一位.?>12/29/202226第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲Php常用交互技术3.获取客户端IP、OS、IEfunctionos($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; }12/29/202227第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲Php常用交互技术3.获取客户端IP、OS、IEfunctionbrowser($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;}12/29/202228第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲Php常用交互技术3.获取客户端IP、OS、IE<?php//***********调用方法*******************echo$_SERVER["REMOTE_ADDR"];echo"<p>";echo$_SERVER["HTTP_USER_AGENT"];echo"<p>";echoos($_SERVER["HTTP_USER_AGENT"]);echo"<p>";echobrowser($_SERVER["HTTP_USER_AGENT"]);?>12/29/202229第四讲Php常用交互技术3.获取客户端IP、OS、IE12第四讲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日以来的以秒数计的时间12/29/202230第四讲Php常用交互技术4.Cookie技术应用:12/第四讲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后失效12/29/202231第四讲Php常用交互技术4.Cookie技术应用:12/第四讲Php常用交互技术4.Cookie技术应用:访问cookie:在php中,设置cookie后,不能再相同的请求中访问cookie。而在设置完后,需要重载网页才可以正常访问。Isset()函数:用于确定变量是否被设置,如已经设置,返回true,否则返回false;Empty()函数:Header()函数:网页重定向header("location:form.php?message=不能为空!");用$_COOKIE[“”]数组来接收cookie变量中的结果。比如:$num=$_COOKIE[“num”];//表示接收上述设置的cookie变量

12/29/202232第四讲Php常用交互技术4.Cookie技术应用:12/第四讲Php常用交互技术4.Cookie技术应用:一个简单的计数器例子:<?if(isset($_COOKIE["num"]))Setcookie("num",$_COOKIE["num"]+1,time()+60);elseSetcookie("num",1,time()+60);echo$_COOKIE["num"];?>//也可以结合前面讲的图形计数器效果改成图形效果。//下面再举一个用户登陆用cookie变量记录用户信息的例子。12/29/202233第四讲Php常用交互技术4.Cookie技术应用:12/第四讲Php常用交互技术5.php上传文件处理: php上传文件是使用php环境中的全局变量$_FILES来完成的,全局变量$_FILES自PHP4.1.0起存在,此数组包含有所有上传的文件信息。(在更早的版本中用$HTTP_POST_FILES替代)。可以如下建立一个特殊的表单来支持文件上传:<formenctype="multipart/form-data"action="upload.php"method="POST">选择上传文件:<inputname="uploadfile"type="file"><inputtype="submit"value="上传"></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"]都是关键字,不能拼写出错。12/29/202234第四讲Php常用交互技术5.php上传文件处理:12/2第四讲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”]都是关键字,不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论