《php网站开发技术-实训指导书吐血制作模板.doc》由会员分享,可在线阅读,更多相关《php网站开发技术-实训指导书吐血制作模板.doc(112页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Four short words sum up what has lifted most successful individuals above the crowd: a little bit more.-author-datePHP网站开发技术-实训指导书2016吐血制作。模板PHP网站开发技术-实训指导书2016吐血制作。模板 PHP网站开发技术实训指导书(第二版) 主编: 苏绍培 四川科技职业学院移动软件学院2016年8月编写说明一方面,长期以来,网站设计、WEB开发相关技术越来越被人们关注,各行各业几乎或多或少依赖着网站。尤其是PHP技术近几年来发展迅猛,应用普遍。另一方面,从教学反
2、馈来看,由于PHP网站开发技术是一门实践性很强的课程,那么我们在培养学生编程理论思想的同时,更应该注重锤炼学生的实战动手能力。该实训手册根据学生学习特点由浅入深、循序渐进,有简单的实训练习内容,也有复杂一些的案例实战,不仅合适课堂教学,而且为学生就业在工作岗位上奠定基础、指明方向。一、实训内容实训一PHP开发环境的搭建实训二PHP基础知识实训三PHP流程控制实训四PHP数组处理实训五PHP数据采集实训六PHP函数应用实训七PHP操作Mysql数据库实训八PHP会话管理实训九字符串处理实训十正则表达式实训十一文件上传案例应用实训十二PHP综合应用实训十三PHP在线编辑器案例应用二、实训任务与要求
3、本实训是PHP网站开发技术课程的实践性教学环节,目的在于培养学生使用PHP语言进行面向对象编程和动态网页编程的实际工作能力。通过实际训练,加深学生对所学的面向对象技术和动态网页编程技术的理解,培养其灵活运用能力和综合问题处理能力。三、实训环境要求1.软件要求Dreamweaver CS6、PhotoShop CS6、Flash CS6、WampServer环境。2.硬件要求网络条件:与因特网连接的局域网。教师用机:Windows2008 Server版。学生用机:Windows2008 Professional版。四、 考核办法1.考核分为三个部分:平时实训考核、作品实训考核和综合实训考核。平
4、时实训考核按照每一实训课程的考核办法进行考核。作品实训考核按照实训结束后的作品综合考核办法进行考核。综合实训考核按照平时成绩考核的30与作品实训考核的70的和进行考核。2.综合实训考核办法:(1) 系统文档 20分(2) 编写代码 30分(3) 程序调试 10分(4) 实训出勤 20分(5) 技术含量 10分(6) 美工设计 10分3.将综合实训考核的分数作为期末考试考核的一部分,期末考试考核中,综合实训考核占50目 录实训一 PHP开发环境的搭建1实训二 PHP基础知识9实训三 PHP流程控制14实训四 PHP数组处理21实训五 PHP数据采集29实训六 PHP函数应用37实训七 PHP操作
5、Mysql数据库43实训八 PHP会话管理62实训九 字符串处理71实训十 正则表达式74实训十一 文件上传案例应用79实训十二 PHP综合应用82实训十三 PHP在线编辑器案例应用88-实训一 PHP开发环境的搭建一、实训目的和要求:1.掌握WAMP或LAMP等PHP环境的部署。2.掌握最基本的PHP程序的结构。3.掌握基本的输出语句以及PHP代码和HTML代码的混合编写。4.掌握PHP的基础知识。二、实训内容:1、下载并安装WampServer,构建PHP运行环境;2、构建PHP开发环境,编写并运行一个PHP程序,最终在屏幕上显示“hello world”以及服务器的系统时钟。要求,为程序
6、的每一行都加上必要的注释说明。3、编写register.html,此页面包含一个简单的表单,用户可以输入用户名、密码、确认密码等信息并可以提交表单。(选作)4、编写register.php,用来处理register.html中用户提交的数据,把用户输入的信息输出到网页中。(选作)三、实例及操作步骤:实例1:安装配置PHP运行环境。步骤如下:步骤1:下载wampserver软件并安装。步骤2:成功安装后修改默认虚拟目录,运行wampserver,打开文件“httpd.conf”,在此文件中查找出目录DocumentRoot c:/programfiles/wamp/www和,将其改为你要作为虚拟
7、目录根目录的路径,如图1和图2所示(注意:在此我将虚拟目录设置为“d:/php”,你可以根据你自己意愿修改)。然后保存,重启Wampserver的服务,如图3所示;图1 虚拟目录设置(1)图2虚拟目录设置(2)选择此项重启服务! 图3 重启服务器实例2:在Dreamweaver中创建PHP测试站点。步骤如下:步骤1:打开Dreamweaver软件,在菜单栏上点击“站点”-“新建站点”,然后为你的站点取一个名字,假设“phpweb,如图4所示;图4 站点命名步骤2:点击“下一步”,点击“是,我想使用服务器技术”,然后选择“PHP Mysql”,如图5;图5 选择服务器技术步骤3:点击“下一步”,
8、选择“在本地进行测试和编辑”,然后选择文件存储的位置,注意,在此要求选择的文件路径要与你在第2步中选择的路径一致,如图6;图6 文件保存目录步骤4:点击“下一步”,注意,此步骤不须做任何更改,如图7;图7 测试URL步骤5:点击“下一步”“下一步”,直到“完成”,如图8,图9。图8 共享文件图9 站点创建完成步骤6:在dreamweaver中创建PHP页面命名为test.php,输入适当的内容,保存。步骤7:按F12键,在IE浏览器中运行PHP文件,以查看动态内容。提示:查看上述PHP页时也可以在地址栏输入以下网址http:/localhost/ test.php ,如图:图10 测试服务器实
9、例3:直接在Wamp安装路径WWW目录下创建PHP测试文件。步骤如下:步骤1:找到磁盘上Wamp下WWW目录,新建一个文件名为helloword.php的php文件。(注意PHP程序的输写方法,开头需要是。)步骤2:在屏幕上输出hello world !,在helloworld文件中写的php语句,对这个语句进行注释。然后在浏览器上显示服务器的系统时钟,语句如:echo date(Y年m月d日H时i分s秒);步骤3:、在浏览器中输入http:/localhost进行测试,正常情况下网页中应该出现“helloworld”等内容。u 相关源代码:第一个PHP程序?php/* 在浏览器上显示hell
10、o world !*/在浏览器上显示hello world !#在浏览器上显示hello world !echo hello world !;echo ;/换行/* 在浏览器上显示服务器的系统时钟 */在浏览器上显示服务器的系统时钟#在浏览器上显示服务器的系统时钟echo date(Y年m月d日H时i分s秒);?实例4:PHP基础知识(牢记)。1PHP代码书写大小写敏感的例子2用分号( ;)结束代码行3PHP代码注释: 注释的形式有多种,一般用“ / ”表示单行注释;用“ /* */ ”表示多行注释。实训二 PHP基础知识一、实训实训目的和要求:1.掌握PHP常量的定义和使用。2.掌握PHP变
11、量的定义和使用。3.掌握PHP的变量的数据类型。4.掌握各种运算符(包括算术、字符串、赋值、逻辑、位以及其他)。5.掌握PHP基本的表达式的使用。6.掌握PHP与HTML代码的嵌套使用。二、实训内容:1. 认识PHP变量:无类型检查,无须声明,类型随用随变。2. 使用define()函数定义常量。3. 字符串连接操作。4. 运算符与表达式应用。5. PHP与HTML代码的嵌套应用。三、实例及操作步骤:实例1:创建PHP程序,录入以下程序,并运行。PHP程序2-1运行后浏览器解释显示的结果?php/PHP变量无类型检查$what=Fred;echo $what的值=$what;if(is_str
12、ing($what) echo $what是字符串型变量;$what=35;echo $what的值=$what;if(is_int($what) echo $what是整型变量;$what=array(Fred,35,wilma);echo $what的值为:;foreach($what as $e) echo $e;if(is_array($what) echo $what是数组型变量;?实例2: 空变量的例子PHP程序2-2运行后浏览器解释显示的结果实例3:用define函数定义常量。PHP程序2-3运行后浏览器解释显示的结果?php/定义方法define(“常量名”,”常量值”)def
13、ine(NICKNAME,sunny);echo hello,.NICKNAME.;?实例4:字符串连接符号.应用PHP程序2-4运行后浏览器解释显示的结果实例5: 和实例4差不多的程序PHP程序2-5运行后浏览器解释显示的结果实例6:利用运算符、表达式计算半径为10的圆的面积和上底为20,下底为30,高为10的梯形的面积,如果圆的面积和梯形的面积都大于50,则输出两个图形的面积。PHP程序2-6运行后浏览器解释显示的结果50&$t_area50)echo圆的面积为:$c_area;echo梯形的面积为:$t_area;?实例6:PHP代码也可放在HTML标签内部。PHP程序2-7运行后浏览器
14、解释显示的结果input type=text name=myname value=input type=button name=mybutton value=注意:PHP代码可放在HTML标签之外,也可放在HTML标签内部,只要不破坏HTML代码,可放在程序(页面)中的任何地方。实例7:在PHP程序中嵌入HTMl代码。在PHP中嵌入HTMl代码,一般利用echo()函数或print()函数,来输出HTML代码。PHP程序2-8运行后浏览器解释显示的结果?php/这里注意单、双引号的嵌套使用方法echo我要居中;echo这是5号字体?实例8:在PHP中插入大段的HTMl代码时可以将HTML代码嵌
15、入在PHP标记之间来输出。PHP程序2-9运行后浏览器解释显示的结果变量的值为1注意:这种方法适合在PHP中插入大段的HTML代码,但是后期的维护有一定的难度,特别是当HTML语句过长时,在编写程序的逻辑代码时容易产生错误。四、作业输出下面的表达式,查看其结果,并思考为什么:(3250)&(9991000)(125)!(“abc”=”ABC”)123=”123”12.3*10%5(int)(true+true)$a=57?”对”:”不对”;echo $a;$x=5;echo(+$x)$x=5;echo($x-)实训三 PHP流程控制一、实训目的和要求:1、掌握PHP常用数据类型、数据类型检测函
16、数、数据类型转换。2、使学生熟悉并掌握PHP的if、Switch语句。3、使学生熟悉并掌握PHP的For循环。4、使学生熟悉并掌握PHP的While循环。5、使学生熟悉并掌握PHP的Do While循环。6、掌握使用break/continue、exit语句。7、了解、掌握控制程序整体结构的方法。二、实训内容:1、数据类型练习。2、if语句应用。3、switch语句应用。4、循环语句应用。三、实例及操作步骤:实例1:数据类型练习1、检测函数练习PHP程序3-1-1运行后浏览器解释显示的结果2、判断数据类型使用gettype()函数PHP程序3-1-2运行后浏览器解释显示的结果?php$a=这是
17、一个字符串!;echo gettype($a),;$b=100;echo gettype($b),;$c=15.12;echo gettype($c),;$d=false;echo gettype($d),;$e=array(10,20,30);echo gettype($e),;?3、数据类型转换:转换成整形PHP程序3-1-3运行后浏览器解释显示的结果?php/转换成整形用(int)或(integer)$a=true;echo $a:.(int)$a .;$b=false;echo $b:.(int)$b.;echo 10-$a.;$c=10.01;echo $c:.(int)$c.;$d
18、=3.45e5;echo $d:.(int)$d.;$e=3.45e5;echo $e:.(int)$e.;$f=string1000;echo $f:.(int)$f.;$g=-15.3e11;echo $g:.(int)$g;?实例2:使用if-else条件结构应用。PHP程序3-2运行后浏览器解释显示的结果?php/if语句的使用$user =true;if($user) echo 欢迎你!; $greed=1;else echo 对不起,禁止访问! ; exit;?实例3:使用if-elseif结构PHP程序3-3运行后浏览器解释显示的结果?phpecho 本程序运行结果:;$fens
19、hu=61;echo 你的分数是:$fenshu,属于:;if($fenshu90) print(优秀);elseif($fenshu80&$fenshu70&$fenshu60&$fenshu=70) print(刚及格);elseif($fenshu实例4:switch结构的用法PHP程序3-4运行后浏览器解释显示的结果实例5:while的语言结构、do-while的语言结构PHP程序3-5运行后浏览器解释显示的结果?php/while循环,从1加到10$total=0;$i=1;while($i实例6:do-while循环PHP程序3-6运行后浏览器解释显示的结果?php/do-whil
20、e循环,从1加到10$total=0;$i=1;Do $total+=$i; $i+;while($i实例7:利用for循环计算从1加到10结果。PHP程序3-7运行后浏览器解释显示的结果?php/利用for循环计算从1加到10结果$total=0;for($i=1;$i=10;$i+) $total+=$i;echo 利用for循环计算从1加到10结果是: $total;?实例8:for循环中多表达式应用PHP程序3-8运行后浏览器解释显示的结果?php/用for循环计算2的0次到9次幂的和$total=0;$total0=0;for($i=1,$j=1;$i=10;$i+,$j*=2) e
21、cho 第.$i.步: $total=.$total.+.$j; $total+=$j; echo =$total;echo 使用for结构,计算结果是: $total=1+2+4+8+.+512=$total;?实例9:break语句的应用PHP程序3-9运行后浏览器解释显示的结果?php$i=1;while($i3)break; /当$i3时结束while循环echo $i=.$i.;/ $i最后输出的值只有1、2、3$i+;?实例10: continue语句的应用PHP程序3-10送到用户浏览器解释后显示的结果?php$m=5;for($n=0;$n思考:如果将continue改为bre
22、ak将会出现什么结果?自己练习以下。实例11:return语句的应用PHP程序3-11运行后浏览器解释显示的结果?php/return用于结束一个函数或文件,它将立即结束函数的执行并将return所带的参数作为函数返回$n=5;for($i=0;$i=$n)return;echo 大于5.;/此处不输出任何内容echo $i. ;/输出01234?思考:如果将$i=$n改为$i=$n将会出现什么结果?自己练习以下。实例12: exit语句的应用PHP程序3-12运行后浏览器解释显示的结果?php/exit也可结束脚本的运行,用法和return类似$a=5;$b=6;if($a 本程序无输出!思
23、考:如果将$a$b将会出现什么结果?自己练习一下。实例13:页面包含文件函数预备知识:require()、require_once()和include()、include_once()的作用和区别;使用形式。PHP程序3-13运行后浏览器解释显示的结果?php/*使用包含文件,新建一个文件conn.php,然后利用include()或require()函数将此文件包含进来。*/echo我们热爱我们伟大的祖国母亲!;include includeinc.php;?PHP程序Conn.php四、作业1、使用循环语句编写程序,浏览网页,实现如下功能: 2、使用循环语句编写程序,浏览网页,实现如下功能
24、:实训四 PHP数组处理一、实训目的和要求:1、了解数组的概念2、掌握定义、创建数组的方法3、掌握获取、输出数组元素的方法4、掌握遍历数组元素的方法5、掌握数组的合并、反转、排序数组元素二、实训内容:1、数组创建方式。2、数组的遍历:遍历数组的3种方式;使用while循环访问数组;使用for循环访问数组;使用for each循环访问数组。3、数组的排序::递增排序的常用函数sort(),asort(),ksort()的用法及意义,及其对应的递减函数rsort(),arsort(),krsort()。4、数组的查找::顺序查找、二分查找、array_search()函数查找的方法。5、数组的拆分
25、: array_splice()函数的用法。6、数组的合并:: array_search()函数的用法。三、实例及操作步骤:实例1:显式创建数组PHP程序4-1运行后浏览器解释显示的结果item1,1=item2,2=item3);/创建一个exampleArray的一维数组echo $exampleArray0. ;/输出item1echo $exampleArray1. ;/输出item2echo $exampleArray2. ;/输出item3?实例2:非显式创建数组PHP程序4-2运行后浏览器解释显示的结果item1,1=item2);echo $exampleArray0. ;/输
26、出item1echo ($exampleArray1). ;/输出item2$exampleArray2=item3;/采用方括号的方式向数组exampleArray添加item3print_r ($exampleArray);/显示整个数组echo ;$exampleArray=item4;/向数组exampleArray添加元素item4,自动产生索引值3print_r($exampleArray);/显示整个数组echo ;$exampleArray2=item5;/向数组添加item5,产生的索引值为0print_r($exampleArray2);/显示整个数组?实例3:创建多维数组
27、PHP程序4-3运行后浏览器解释显示的结果array(红,蓝,白), number=array(1,2,3,4,5,6);echo $Arraycolor2.;print_r($Array);?实例4:使用while循环访问数组PHP程序4-4运行后浏览器解释显示的结果?php/在while循环中list()和each()函数结合使用可以实现对数组的遍历,其中list()函数的作用是将数组中的值赋给变量$arr=array(item1,item2,item3,item4,item5,item6);while(list($key,$value)=each($arr)/each函数的作用是返回当前
28、的键名和值,并将数组的指针向下移动一位echo $key. ;echo $value.;? 实例5:使用for循环访问数组PHP程序4-5运行后浏览器解释显示的结果?php$array=range(1,10);for($i=0;$i 注意:使用for循环只能访问键名是有序的整型数组,如果是其他的类型则无法访问。实例6:使用for each循环访问数组PHP程序4-6运行后浏览器解释显示的结果?php$array=array(红色,白色,蓝色);foreach($array as $arrvalue)echo value:$arrvalue. ;/输出键值echo;foreach($array
29、as $key=$value)echo key:$key;value:$value. ;/在输出键值的同时,也输出键名? 实例7:使用for each结构遍历一个二维数组PHP程序4-7运行后浏览器解释显示的结果array(a,b,c,d),2=array(A,B,C,D),array(1,2,3,4);foreach($array as $key=$arrvalue)echo $key:t;foreach($arrvalue as $value) echo $valuet;echo ;? 练习:如何使用for循环和while循环输出二维数组,请自己练习。 实例8:使用while循环访问数组P
30、HP程序4-8运行后浏览器解释显示的结果5,x=3,5=7,c=1);$array2=array(2=c,4=a,1=b);if(sort($array1)print_r($array1);elseecho排序$array1失败!;echo ;if(sort($array2)print_r($array2);elseecho排序$array2失败!;?注意:sort()函数不仅对数组进行排序,同时删除了原来的键名,并重新分配自动索引的键名。但asort()和ksort()有所不同,大家可自行练习。实例9:多维数组排序。array_multisort($array1,$arg,$array2),
31、其中第一个参数必须是一个数组,接下来每个参数可以是数组或固定含义的标志。当函数的参数是一个数组列表时,函数首先对数组列表中的第一个数组进行排序,下一个数组中值得顺序按照对应的第一个数组的值的顺序排列。PHP程序4-9运行后浏览器解释显示的结果?php$xh=array(01,02,03);$xm=array(张三,李四,王五);$cj=array(69,82,45);array_multisort($cj,SORT_DESC,$xh,$xm);print_r($xh);echo;print_r($xm);echo;print_r($cj);?实例4-10:数组顺序查找PHP程序4-10运行后浏
32、览器解释显示的结果?php$exampleArray=array(one,two,three);function lookup($array,$key)/定义顺序查找函数$cnt=count($array);$find=false;for($i=0;$i实例4-11:二分法查找PHP程序4-11运行后浏览器解释显示的结果?php$exampleArray=array(one,two,three);function lookup($array,$key)/定义查找函数$cnt=count($array);$find=false;for($i=0;$i实例4-12:利用array_search()
33、函数进行查找。如果查找成功,则返回该值所在的键名,否则返回false,如果要查找的值不止一次的出现,则返回第一个匹配的键名。第三个参数可以为true或false,如果为true则比较二者是否全等。PHP程序4-12运行后浏览器解释显示的结果?php/利用array_search()进行查找$arr=array(15,a,30,60,30,b,C);echo15:.array_search(15,$arr).;echo30:.array_search(30,$arr,true).;echo60:.array_search(60,$arr).;echo30:.array_search(30,$ar
34、r).;echoc:.array_search(c,$arr).;echoC:.array_search(C,$arr).;?实例4-13:array_splice($array,$offset,$length),其中$offset为获取子集的开始位置,如果为负则将从距离数组末尾该值指定的数值量开始;$length为获取子集的长度,如果为负,则将距离数组末尾该值指定的数值量终止,如果没有设置$length参数,则将从开始位置一直取到数组的末尾。PHP程序4-13 3 1 = 6 2 = 48 3 = 65 4 = 45 5 = 34 6 = 86 )$arr2=array_splice($arr,1,2);print_r($arr2);/输出Array ( 0 = 3 1 = 6 )$arr3=array_splice($arr,-4,2);print_r($arr3);/输出Arra