PHP教学教案三.docx

上传人:b****6 文档编号:8462537 上传时间:2023-01-31 格式:DOCX 页数:13 大小:21.53KB
下载 相关 举报
PHP教学教案三.docx_第1页
第1页 / 共13页
PHP教学教案三.docx_第2页
第2页 / 共13页
PHP教学教案三.docx_第3页
第3页 / 共13页
PHP教学教案三.docx_第4页
第4页 / 共13页
PHP教学教案三.docx_第5页
第5页 / 共13页
点击查看更多>>
下载资源
资源描述

PHP教学教案三.docx

《PHP教学教案三.docx》由会员分享,可在线阅读,更多相关《PHP教学教案三.docx(13页珍藏版)》请在冰豆网上搜索。

PHP教学教案三.docx

PHP教学教案三

PHP教学教案(第三天)

上午

第六章(PHP与HTML表单)

●表单数据的提交方式

⏹通过GET

⏹通过POST

⏹获取提交的表单数据

⏹文本框、单选、复选、列表框、文本域、文件域、隐藏域

●表单变量的处理

●对表单传递的变量值进行编码和解码

表单数据的提交方式

在html元素中表单的传递数据是通过两种传送方式达到的:

GET方法和POST方法,通过的method属性来指定

通过GET方法获取值

Get方法是通过向地址栏结尾处追加查询字符串的方式来传送和获取值的,地址和字符串之间用?

隔开。

每个字符串之间用&隔开。

传送的是form表单中元素的名和值。

在提交页面(action)里使用$_GET预定义变量自动保存通过Get方法传递的值。

示例:

php_get.php、php_get_receive.php

//注意地址栏、php会对中文做重编码处理。

其缺点也是把传输的内容都暴露在地址栏中。

安全性比较低。

地址栏只能长度为1024K。

POST可以解决这个方法。

通过POST方法提交数据

post提交是不依赖与URL,所有提交的信息在后台完成。

所以地址栏不会显示传输的内容。

使用$_POST[name]变量可以获取表单元素的值。

示例:

php_post.php、php_post_receive.php

获取提交表单的数据

1.获取按钮的数据

HTML表单有3种按钮。

显示相同。

但作用却不同。

提交按钮(submit):

对form表单中的内容做向ACTION中提交的作用。

一般只有一个

重置按钮(reset):

对form表单中的内容恢复到修改前的状态(非清空)

普通按钮(button):

单击在事件(onclick)中写入脚本程序(javascript),通过脚本来感知操作

如:

php_HTMLbutton.php

再示例:

书P166

2.获取文本域的数据

HTML文本域(text)、密码域(password)的属性和使用基本相同,前者是基础单行输入框,后者是密码单行输入框。

两者默认输入size长度为20。

示例:

书上P168~169

3.获取单选按钮的数据

HTML中radio是单选选项按钮,具有相同的name和不同的值。

使其绑定在一个组中。

每次只能从中选择一个。

可以在属性中添加checked属性表示初始化选择,通过submit提交后按method方式来接值。

示例:

书P170

4.获取复选框的数据

复选框checkbox是在同一时期选择多项的选择框,为了方便传值name的名字可以是一个数组形式。

在返回界面后可以使用count()函数计算数组的大小,配合for循环输出。

示例:

php_HTMLcheckBox.php

再示例:

书P171~172

5.获取列表框的数据

HTML有3种下拉列表框、列表框、多选列表框。

格式基本一样当size值为1时为下拉框,当size值大于1时为列表框。

当有muliple属性时。

就是多选框。

多选框使用时name的名字要是数组。

示例:

php_HTMLlist.php

6.获取文本域的数据

文本域(textarea)多行文本框。

可以控制显示的内容的行和列大小rows/cols。

示例:

书上P175

7.获取隐藏域的数据

HTML的隐藏传送hidden元素。

在一些数据库或程序处理页面。

需要传送值但又不能用FORM的Method方法提交时使用。

示例:

php_HTMLhidden.php

再示例:

书P177~178

在PHP中处理表单变量

PHP中的$_POST/GET方式传送接受的变量是页面级临时变量。

每次刷新页面后都会重新赋值。

当超出页面就取不到变量值。

示例:

书P179-181

对表单传值的变量进行编码与解码

HTTP在传递数据时只能识别8位ASCII码,特殊符号(空格、标点)或汉字可能在传输后被歧义的编译。

这样我们就需要对其进行传送编码。

既能保证传输的正确性。

也能提高传输过程的安全性。

PHP有两种编码方式:

URL编码和BASE64编码

URL编码

url编码是浏览器用来打包表单元素的一种格式。

在PHP中使用函数urlencode()来实现编码。

然后再次通过urldecode()来解码。

示例:

php_urlencode.phpphp_urldecode.php

再示例:

书上P183

BASE64编码与解码

urlencode()函数只能针对空格、汉字和特殊字符编码,对英文和数字就无能为力。

而BASE64可以。

BASE64是包含英文大小写字母、数字、+和-共64个基本符号组成。

常见在网络上用户传输8位字节码的编码。

很多大型企业邮件系统就采用BASE64。

通过base64_encode(string)实现编码,返回字符串

通过base64_decode(string)实现解码,返回字符串

示例:

书P184~185

包含技术

如果页面过于冗长而且一段代码多处使用,这时我们可以采取包含技术,把这些代码另行放入一个php文件,在需要用到的地方包含进页面就可以了。

PHP的包含技术有两个函数

●include_once()

●include()

只要把需要多次使用的代码放入函数中,在需要使用时写入就做到了包含

如include(“1.php”),把这段代码写在2.php中

示例:

php_includeTkg.php、php_include1.php、php_include2.php

演示示例

HTML头文件和尾文件的连接

演示示例

用户注册流程

 

下午

第七章(字符串)

●获取字符串的长度

●字符串的连接和分割

●字符串大小写转换

●字符串与HTML相互转换

●去除字符串中的空格

●确定字符串和单词的数量

●定位字符

●填充、删除和截取字符串

●字符串的比较

●字符串的查找和替换

●URL处理

⏹URL字符串解析

获取字符串的长度

intstrlen(stringstr)

示例:

php_strlen.php

再示例:

书上P191-192

字符串的连接和分割

把数组连接为字符串输出

stringimplode(stringstr,arrayarr)

str:

连接分隔符

arr:

需要连接的数组

示例:

php_implode.php

把字符串拆分为字符数组

arrayexplode(stringseparator,stringstr)

sepatator:

分隔参照的分隔符

str:

需要拆分的字符串

示例:

php_explode.php

字符串大小写转换

将小写字母转换为大写

stringstrtoupper(stringstr)

示例:

php_strtoupper.php

将大写转换成小写:

strtolower()语法和使用方法和strtoupper()相同

将字符串的首字母转换为大写

stringucfirst(stringstr)

示例:

php_ucfirst.php

将字符串中每个单词的首字母都转换成大写ucwords()

示例:

php_ucwords.php

字符串与HTML相互转换

将HTML代码原样输出,不解释编译处理

stringhtmlentites(stringstr,intquote,stringcharset)

str:

要转换的字符串

quote:

指定转换时针对的单双引号的转换,参见书P196

charset:

编码格式(utf-8、gb2312、ISO-8859-1),参见书P197

示例:

php_htmlentities.php

再示例:

书P197~198

去除字符串中的空格

ltrim()/rtrim()/trim()

trim()去除字符串两旁的空格

示例:

php_trim.php

ltrim()和rtrim()用法与trim相同

确定字符串和单词的数量

如果需要判断在一个字符串中指定字符串出现的次数使用substr_count()函数完成

intsbustr_count(stringhaystack,stringneedle)

haystack:

要操作的字符串

needle:

要查找的字符

示例:

php_substr_count.php

再示例:

书P201~202

获取字符或者单词数量的函数还有:

●count_chars()

函数返回字符串所用字符的信息。

语法:

count_chars(stringstringName,intmode)

参数:

stringName必需,为要检索的字符串

mode规定返回模式。

默认是0。

有以下不同的返回模式:

1–数组,ASCII值为键名,出现的次数为键值,只列出出现次数大于0的值

0–数组,ASCII值为键名,出现的次数为键值,只列出出现次数等于0的值

3–字符串,带有所有使用过的不同的字符

4–字符串,带有所有未使用过的不同的字符

示例:

php

$str=“HelloWorld!

”;

print_r(count_chars($str,1));

?

>

结果:

Array([32]=>1[33]=>1[72]=>1[87]=>1[100]=>1[101]=>1[108]=>3[111]=>2[114]=>1)

示例2:

php

$str=“HelloWorld!

”;

echocount_chars($str,3);

?

>

结果:

!

HWdelor

●str_word_count()

定位字符

获取字符在字符串中首次出现的位置

intstrpos(stringhaystack,stringneedle)

haystack:

指定从哪个字符串中检索

needle:

要检索的字符串

示例:

php_strpos.php

再示例:

书P204~205

填充、删除和截取字符串

从指定字符串中截取指定长度的字符

stringsubstr(stringstr,intstart[,intlength])

参数str为字符串,start为开始位置(从0开始),length为要取的字符长度

如果start是正数,提取将从字符串的第一个字符开始。

但如果start为负数,提取字符串的开始位置从字符串的末尾开始计算。

如:

php

$extract=substr(“Hello”,1);

echo$extract.“
”;//ello

$extract=substr(“Hello”,1,2);

echo$extract.“
”;//el

$extract=substr(“Hello”,-2);

echo$extract.“
”;//lo

$extract=substr(“Hello”,-3,2);

echo$extract;//ll

?

>

length长度如果为负数,则提取长度倒记数字之前的所有字符。

如:

php

$extract=substr(“Hello”,1,-1);

echo$extract.“
”;//从1开始,并且到-1之前结束。

取这些ell

$extract=substr(“Hello”,2,-2);

echo$extract;//l

?

>

将字符串填充成指定长度的字符串

stringstr_pad(stringinput,intpad_length,stringpad_string,intpad_type)

函数把字符串填充为指定的长度。

语法:

str_pad(string,length,pad_string)

参数:

string:

需填充字符串

length:

填充长度

pad_string:

填充的字符

示例:

php

$str=“HelloWorld”;

echostr_pad($str,20,”.”);

?

>

结果:

HelloWorld.........

再示例:

书P210

字符串的比较

intstrcmp(stringstr1,stringstr2)

如果相等返回0,如果str1>str2返回大于0的值,反之返回小于0,区分大小写

示例:

php_strcmp.php

再示例:

书P211

intstrcoll(stringstr1,stringstr2)与strcmp相同。

但不区分大小写

similar_text()

比较两个字符串的数值,检索两者之间相似的字符。

语法:

similar_text(string1,string2,percent)

参数:

string1必需。

规定要比较的第一个字符串。

String2必需。

规定要比较的第二个字符串。

Percent可选。

规定供存储百分比相似度的变量名。

示例

php

echosimilar_text(“abc”,”ateb”);//显示2

?

>

trops()

函数返回字符串在另一个字符串中第一次出现的位置。

语法:

inttrops(string,find,start)

参数:

string必需。

规定被搜索的字符串。

Find必需。

规定要查找的字符。

Start可选。

规定开始搜索的位置。

示例:

php

echo_trops(“Helloworld!

”,”wo”,2);

?

>

结果:

6

该函数对大小写敏感。

如需进行对大小写不敏感的搜索,使用stripos()函数。

stripos()

示例:

php

echostripos(“Helloworld!

”,”WO”);

?

>

结果:

6

字符串的查找和替换

查找字符串

stringstrstr(stringhaystack,stringneedle)

haystack:

要被搜索的字符串

needle:

指定将要搜索的内容

如果成功返回剩余字符串,否则返回false,区分大小写

示例:

php_strstr.php

获取字符串在另一个字符串中最后一次出现的位置,区分大小写

stringstrrchr(stringhaystacy,stringneedle)

示例:

php_strrchr.php

字符串的替换

str_replace函数

在基本字符串中搜索所有替换的字符串,区分大小写

str_replace(search_string,replace_string,base_string)

参数search_string为需要查找的字符串,replace_stirng为需要替换的字符串,base_string为原字符串

如:

php

$story="ThisisanexcellentexampleofahorrorstoryEXCELLENT.";

$retstring=str_replace("excellent","exceptional",$story);

echo$retstring;//Thisisanexceptionalexampleofahorrorstory.

?

>

函数str_ireplace()与str_replace使用方式相同,只是不区分大小写

URL处理

URL(UniformResourceLocator)统一资源定位符。

URL处理主要只对URL地址做内容解析。

URL字符串解析

解析分为两种解析:

部分解析和全面解析

部分解析是针对GET方式传递的QUERY_STRING查询字符串

完成解析是对整个URL地址的解析

对查询字符串进行解析

voidparse_str(stringstr[,arrayresult])

示例:

php_parse_str.php

Cookies概述

Cookies最早是Netscape公司使用的一种存储信息在客户端的技术。

之后被WWW协会支

持,Micorsoft也开始支持这项技术。

Cookies是能被Web服务器通过Web浏览器存储到本地磁盘上。

当需要再访问时,web服务器也将可以获取这些信息。

即,由服务器端生成存储在客户端的信息。

Cookies在客户端的时间是可以制定的,分为暂时性和永久性

Cookies在PHP中的实现

在php中cookies将被自动认为是全局变量,并且能从php脚本的任何位置访问它们,同时,它们是被当作普通变量访问和读取的。

创建Cookies

setcookie()函数,服务器就是使用该函数来设置cookie,并在客户发出连接请求的时候把它传送到客户端的。

语法:

setcookie(stringname,stringvalue,intexpiry,stringpath,stringdomain,intsecure);

6个参数

1.name:

cookie名

2.value:

cookie值

3.expiry:

cookie失效时间,不指定表示为当前时间

4.path:

cookie文件所在的层次目录,该参数的默认值是/,表示所有目录下都被认为是有效的。

5.domain:

被认为有效的主机名或域名。

如果没有指定那么哪个服务器创建的cookie。

这个服务器将被默认

6.secure:

是否必须通过安全通道传送(加密),如果该参数的值是1,那么cookie将通过能保证安全的Https协议在Internet被传送

6个参数中,除了name是必填的。

其他的参数都是可选的。

php

setcookie("cookieName","cookieValue")

?

>

还会用到的函数

time()

time()函数用来确定当前时间,它以秒为单位返回时间。

语法:

inttime()

注意:

返回1970年到现在的秒时间

如:

php_time.php

mktime()

mktime()用来将接收到的时间单位,如小时、分钟、秒、月和年作为参数,并把信息转换为时间。

语法:

intmktime(inthour,intminute,intsecond,intmonth,intday,intyear);

注意:

在书写时是具体时间,但转换完后还是秒

如:

php_mktime.php

访问cookie

cookie是由服务器发送到浏览器的变量。

Cookie通常是服务器嵌入到用户计算机中的小文本文件。

每当计算机通过浏览器请求一个页面,就会发送这个cookie。

示例:

php_Cookies1.php

header()函数

php的跳转指定向行数

header(Location:

);

值得注意的是此跳转语句只能在之前没有输出语句的前提下才能使用。

示例:

php_header.php/php_headerTo.php

跳转页面的其它方法

javascript脚本跳转

php

echo""

?

>

HTML跳转

php

echo"2秒后转入前页面,请稍候"

?

>

从Cookie中读取值和读取普通变量一样。

示例:

php_getCookies1.php/php_getCookies2.php

删除Cookies

通过把失效日期设置为过去的日期/时间,删除一个cookie

php

//把失效日期设置为一小时前

setcookie("TestCookie","",time()–3600);

?

>

创建一个数组cookie

创建数组Cookie或者字典Cookie

示例:

php_dicCookie1.php/php_dicCookie2.php

加密处理

md5()加密处理

php

$str="ILoveThisGame";

echomd5($str);

?

>

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 解决方案 > 学习计划

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1