《PHP网站开发项目式教程教学教案.docx》由会员分享,可在线阅读,更多相关《PHP网站开发项目式教程教学教案.docx(77页珍藏版)》请在三一办公上搜索。
1、课程内容信息说明主题PHP基础知识简介和环境搭建所属任务任务1、任务2教学目标(与课程标准目标对应关系)知识目标掌握PHP基础知识,包括动态网页与静态网页的区别、PHP的概念及能够实现的功能掌握PHP的环境需求、APaChe服务器主目录的概念熟悉集成化环境的功能及作用能力目标能够独立搭建PHP集成化开发环境能使用记事本创建一个简单的php程序能使用web服务器运行php程序重点静态网页与动态网页的区别XAMPP环境的用法Apache服务器主目录的概念和用法难点Apache服务器主目录的概念和用法教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用
2、,机房传屏软件应用或腾讯会议应用课中活动及需要时间LPHP基础知识简介(30分钟)理论讲授、提问教师活动学生活动(I)静态网页和动态网页的特点及区别提出问题:静态网页和动态网页分别在哪一端运行?运行步骤如何?学生回答问题(2)讲解PHP的基本概念及PHP能够完成的页面功能学生听课(3)启发大家思考:PhP文件中能否使用html标记、CSS样式代码?html文件中能否包含php代码?为什么?学生回答问题2.xampp环境搭建(30分钟)演示+学生实操教师活动学生活动演示xampp集成化环境的搭建过程学生同步完成学生会在端口号、数据库启用等环节出现各种问题,教师帮助学生解决问题学生解决问题3.Ap
3、ache主目录(15分钟)讲授、演示教师活动学生活动讲解web服务器主目录的作用讲解Apache主目录的用法学生听课创建一个简单的PHP文件并运行完成操作4.小测试(12分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题目,作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动独立创建一个简单的PHP文件,将其保存在主目录和主目录的子文件夹中,分别运行,并提交作业检查学生作业
4、,总结作业中的问题,并反馈给学生课程内容信息说明主题PHP语法基础所属任务任务3教学目标知识目标掌握PHP中常量变量的定义及表达式运算符的用法掌握PHP中输出语句的用法能力目标能够正确定义并使用常量和变量能够正确使用PHP中的运算符能够熟练使用echo语句输出各种结果重点变量的定义和运算符的应用输出语句的用法难点运算符中的完全相等和不完全相等单引号和双引号定界变量的不同作用教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间LPHP标记、注释、常量和变量(20分钟)理论讲授、提问教师活动学生活动(
5、1)讲解PHP的基本标记?php.?在代码中的用法和注意事项学生听课(2)讲解PHP的注释语句学生听课(3)讲解PHP中常量和变量的定义及使用方法头脑风暴问题:在给定的组合中找出合法的变量学生回答问题2.PHP中的运算符和表达式(30分钟)演示+学生实操教师活动学生活动简介基本的运算符学生听课详细讲解完全相等、不完全相等、相等和不等运算符的用法编写程序,分别输出表达式5=5、5=5,、5!=5、51-5,,观察结果(分别使用echo和VaJdUrnP输出)学生听课并同步操作3.PHP中的输出语句(25分钟)讲授、演示教师活动学生活动讲解并演示输出语句echo和var_dump学生听课并同步完成
6、操作讲解变量使用双引号定界和单引号定界后的不同处理方法学生听课4.小测试(12分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题目,作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动完成基础知识应用小示例作业存在变量$SChOoI=山东商职学院,Sdepart=云计算技术与应用产业学院”,Sstudent=2020级全体同学”完成如下功能要求:将三个变量的值使用一个输出语
7、句在同一行中显示出来使用三个输出语句在同一行中显示出来使用一个输出语句分三行显示使用三个输出语句分三行显示检查学生作业,总结作业中的问题,并反馈给学生课程内容信息说明主题PHP中的日期和时间所属任务任务3教学目标知识目标掌握日期时间函数date。中各种格式符的用法掌握时间戳函数StrtOtimeo的作用和用法能力目标能够正确使用dale。函数获取各种日期时间结果能够正确使用时间戳函数,并根据时间戳得到需要的日期时间重点日期时间函数date。中各种格式符的用法时间戳函数Strtotimeo的作用和用法难点将时间戳函数Strtotime()的结果作为date()函数第二个参数并获取对应的日期教学方
8、法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间1.应用date。函数(30分钟)理论讲授、提问教师活动学生活动(I)date()函数中各种格式符的作用和用法学生听课(2)date()函数应用举例,获取各种日期时间结果学生听课并完成操作2.strtotime()函数(40分钟)演示+学生实操函数格式及作用讲解学生听课应用StrtotimeO函数进行攵期、下个星期一的日期和三讲解在StrtotimeO函数中各二理,分别获取今天的日期、明天的日1天后的日期种日期格式的写法学生听课并同步操作3.小测试(1
9、2分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题目,作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动完成作业创建文件,求当前日期距离下一年(例如2023年)元旦的天数检查学生作业,总结作业中的问题,并反馈给学生课程内容信息说明主题流程控制所属任务任务3教学目标知识目标掌握PHP中if.elseif结构和SWitCh结构的用法掌握for循环结构的用法能力目标能够使用多
10、分支结构完成程序功能处理能够使用for循环结构完成月历的输出重点综合运用分支和循环结构完成月历的输出难点综合运用分支和循环结构完成月历的输出教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间L讲解分支结构(20分钟)代码演示、提问教师活动学生活动(1)使用ifekeif结构完成的成绩等级判断程序中,各个条件的顺序能否随意颠倒?为什么?学生思考并回答问题(2)简介SWitCh语句,并使用该结构修改成绩等级判断程序学生听课并完成操作2.使用循环结构完成月历输出(60分钟)讲解、演示+学生实操演示月历
11、的运行效果,分析功能实现步骤学生听课按步骤完成月历功能学生听课并同步操作4.小测试(7分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题目,作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动修改月历输出形式,将星期日放在最后一列,并提交作业检查学生作业,总结作业中的问题,并反馈给学生课程内容信息说明主题数组所属任务任务3教学目标知识目标掌握PHP中数组的分类及定义方法掌握
12、数组的遍历方法能力目标能够正确定义并处理数组元素能够完成数组的遍历重点关联数组的定义及遍历难点关联数组的定义及遍历教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间L讲解数组的分类及定义(30分钟)讲解、提问教师活动学生活动(1)讲解array()函数,定义并访问索引数组学生听课(2)定义并访问关联数组学生听课并完成操作(3)使用数组结合日期时间函数输出当前日期是星期几的结果完成操作(4)混合数组中的索引问题学生听课并回答问题2.遍历数组(45分钟)讲解、演示+学生实操教师活动学生活动讲解使用e
13、ach。函数遍历数组时的用法学生听课讲解使用foreach()方法遍历数组的用法学生听课并同步操作3.小测试(12分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题目,作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动完成作业创建一个包含指定学生信息的一维数组$SIU,使用循环遍历数组的方式逐个输出元素键名和值,并提交作业检查学生作业,总结作业中的问题,并反馈给学生任务4
14、7表单界面设计及数据验证课程内容信息说明主题表单界面设计及数据验证所属任务任务4教学目标知识目标理解数据验证对表单提交数据的重要作用掌握数据验证函数的定义和用法能力目标能够按照要求完成表单数据的合法性验证重点数据验证函数的定义和用法难点数据验证函数的定义和用法Return和returnfalse的作用教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间L完成表单界面设计(30分钟)演小教师活动学生活动(1)说明“自我介绍”表单界面的组成结构及各种元素的name和id的定义要求学生听课(2)完成表单
15、界面的创建学生听课并完成操作2.完成表单数据验证(45分钟)讲解、演示+学生实操说明不同表单元素的数据验证要求学生听课使用htm15表单元素属性完成部分表单元素的数据验证学生听课并同步操作定义脚本函数完成确认密码的验证,并调用函数强调函数内部returnfalse的作用和调用函数时return的重要作用演示并解释表单OnSUbmit=returnfhlse的作用学生听课并同步操作3.小测试(12分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题FL作为对知识的加强巩固学生听课,分析自己出问题
16、的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动完成作业完善表单界面设计和数据验证功能检查学生作业,总结作业中的问题,并反馈给学生课程内容信息说明主题表单数据提交所属任务任务4教学目标知识目标掌握数组$_POST和$_GET的作用和用法掌握函数implode。的作用和用法掌握函数issei()的作用和用法能力目标能够创建php文件接收并处理表单提交的数据重点数组$_POST和$_GET的作用和用法函数implode。的作用和用法函数issel()的作用和用法难点复选框组提交数据的处理方法单选按钮和复选框组未选时服务
17、器端问题的解决方法教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间L数组$_POST和$_GET而作用和用法(45分钟)讲解、演示教师活动学生活动(1)数组$_POST和$_GET的作用和用法学生听课(2)创建PhP文件,获取并处理自我介绍表单所提交的数据引出复选框组提交数据在输出时的结果,并引导大家思考问题学生听课并完成操作(3)讲解复选框组提交数据的结果,并使用implode()函数对数组结果进行合并处理学生听课并完成操作2.使用isset函数(30分钟)讲解、演示+学生实操教师活动学生活
18、动演示在表单界面中不选择单选按钮组和复选框组元素并提交数据时的问题,说明原因学生听课引入isset()函数判断数组元素是否存在,并根据结果进行处理学生听课并同步操作3.小测试(12分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题目,作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的要求课后活动学生活动(约30分钟)教师活动完成作业若是要求用户必须选择性别和兴趣爱好,才能提交数据,如何完成?使用脚本代码完成作业并
19、提交检查学生作业,总结作业中的问题,并反馈给学生课程内容信息说明主题文件上传所属任务任务4教学目标知识目标掌握系统数组$_FILES的作用和用法掌握move_uploaded_file()函数的作用和用法掌握多文件上传后的处理方法掌握大文件上传时PHP配置文件的设置方法能力目标能够完成文件的上传和处理操作重点系统数组$_FlLES的作用和用法move_uploaded_file()函数的作用和用法多文件上传后的处理方法难点move_uploaded_file()函数的作用和用法多文件上传后的处理方法教学方法与教学手段教学方法线上线下结合、项目驱动、启发引导、问题导向、案例演示教学手段信息化手段
20、应用,机房传屏软件应用或腾讯会议应用课中活动及需要时间L系统数组$_FlLES的作用和用法(40分钟)理论讲授、提问教师活动学生活动(1)创建up.html文件,用于上传单个文件学生听课并完成操作(2)讲解系统数组$_FILES中的键名的作用和用法学生听课(3)创建upphp文件,获取上传文件的信息并输出,对上传文件的大小使用romd()函数进行四舍五入处理学生听课并完成操作(4)讲解move_uploaded_file()函数的作用和用法,使用该函数将上传的文件保存到指定位置,引入文件名汉字编码处理函数iconv()的应用学生听课并完成操作2.多文件上传(30分钟)演示+学生实操教师活动学生
21、活动讲解多文件上传是文件域名称设置方法及multiple属性的应用学生听课详细使用循环结构在服务器端进行处理的方法学生听课并同步操作3.大文件上传的设置方法(5分钟)讲授、演示教师活动学生活动说明PHP中默认能够上传的文件大小,讲解在PHRini配置文件中进行相关设置的方法学生听课并同步完成操作4.小测试(12分钟)完成在教学平台中组建的小测试教师活动学生活动启动课堂测试,测试内容基本同课前预习后的测试题目学生利用5-8分钟完成测试教师讲解测试中出现问题较多的题FL作为对知识的加强巩固学生听课,分析自己出问题的原因,找出症结小结(3分钟)对学生课前预习效果、本次课的实施效果进行点评,并提出新的
22、要求课后活动学生活动(约30分钟)教师活动完成作业上传多个文件,并按照指定要求输出每个文件的信息检查学生作业,总结作业中的问题,并反馈给学生5-1注册表单的数据验证课程内容信息说明所属任务任务五邮箱注册和登录功能实现已有基础(学情)课前预习已经完成了邮箱注册界面的设计和简单注册数据的提交,为表单数据合法性验证准备了操作平台。教学目标知识目标1 .理解表单数据合法性验证的重要性2 .掌握使用正则表达式完成注册表单数据验证的方法3 .掌握使用js函数完成两次密码的一致性判断的方法能力目标1 .能按照要求完成表单数据验证,确保提交数据的合法性2 .拓展数据验证的更多方法,培养举一反三的创新思维和创新
23、设计能力素质目标(包含课程思政)1 .针对网站中不规范的数据填写,培养精益求精的工匠精神2 .养成代码规范习惯重点1 .理解数据验证的重要性2 .使用HTML5正则表达式完成邮件地址、密码和手机号的数据验证3 .使用js函数完成密码和确认密码一致性判断难点1 .如何根据不同需求设计符合要求的正则表达式2 .数据校验中函数内部和外部的returnfalse各自有什么作用?教学策略信息化手段动画展示数据验证的重要性及returnfalse和returntrue的不同效果教学方法讨论法、启发引导、问题导向、讲授法学习方法课前预习、课中探究、课后练习与拓展课前活动及需要时间学生活动及内容教师活动及内容
24、L布置学生观看如下视频,设计翻转课堂问题,安排预习作业(图片验证码预习作业1)5-5.1-1表单元素数据要求说明的添加5-5.1-2注册表单的数据验证.讲解部分5-5.1-3注册表单的数据验证操作部分5-5.1-4脚本文件的引用与验证函数的调用5-5.1-5表单数据验证密码与确认密码验证5-5.1-6使用H5表单元素新属性完成验证2 .设计职教云头脑风暴问题、抢答问题、摇一摇问题和课堂讨论问题,为课堂使用做准备3 .批阅学生的预习作业1 .观看视频5-5.1J(约5分钟)5-5.1-2(约3分钟)5-5.1-3(约7分钟)5-5.1-4(约5分钟)5-5.1-5(约6分钟)5-5.1-6(约6
25、分钟)2 .思考翻转课堂问题,完成预习作业设计注册界面并完成简单数据提交(约30分钟)3 .完成“课前预习中的难点问题调查问卷”课中活动(检查预习效果,讲解重点难点)及时间安排1 .导入模块-表单验证的重要性(5分钟)2 .使用HTML5表单元素新属性进行数据验证(40分钟)3 .使用js函数完成密码和确认密码一致性判断(35分钟)4 .课中考核与总结(10分钟)环节I-导入模块:表单数据验证的重要性(5分钟)重点,表单数据验证的重要性教学手段:问题导向教师活动学生活动讲解重点:表单数据验证的重要性(动画演示+讲解)运行注册页面,教师输入不符合要求的数据,说明给用户带来的困惑。启用抢答问题:为
26、什么注册成功的账号无法登录?引入课程思政培养精益求精的T匠精神,避免垃圾数据,提升用户体验(5分钟)学生参与讨论、听课环节2-使用HTML5表单元素新属性进行数据验证(40分钟)重点:完成对邮件地址、密码和手机号的合法性验证难点:如何设计邮件地址、密码和手机号的正则表达式教学方法:问题导向、设置障碍、启发引导法教师活动学生活动(I)解决重点+难点:设计正则表达式完成手机号验证(化整为零、启发引导法,引导学生步步前行)第一步,解决首位数1的要求:引导学生写出符合首字符要求的正则式第二步,解决第2位数字的要求:根据手机号中第2位数的实际应用情况,引导学生写出符合中间字符要求的正则式,强调正则表达式
27、中或运算的应用第三步,解决后面9个数字的要求:写出相应的正则式,强调设置字符个数的方法课堂练习:在手机号文本框中定义正则表达式,完成手机号的合法性验证,输入各种不符合要求的手机号,观察效果(8分钟)学生思考问题,听讲完成练习(2)启用头脑风暴问题:你认为表单数据验证在浏览器端进行还是在服务器端进行?为什么?教师强调在浏览器端进行数据验证的原因和重要性(5分钟)学生思考问题、听讲(3)回顾前导课程的知识,启用头脑风暴问题:HTML5中不允许表单元素为空,需要使用的属性是什么?设置正则表达式,需要使用的属性是什么?学生回答之后,教师加以简单说明,并在邮件地址和密码框中设置不允许为空,运行让学生观察
28、效果。(5分钟)回答问题、听课(4)解决重点+难点:设计正则表达式,完成邮件地址验证(化整为零、启发引导法,随机提问,引导学生步步前行)第一步,解决首字符的要求:引导学生写出符合首字符要求的正则式,强调字符范围的写法第二步,解决中间部分字符的要求:引导学生写出符合中间字符要求的正则式,强调要设置个数范围时需要注意的问题第三步,解决尾字符的要求:让学生独立写出正则式(12分钟)学生思考问题,听讲(6)解决重点+难点:设计正则表达式完成密码验证(启发引导法)启用头脑风暴问题:如何将需要的密码字符都提供给用户?引导学生将需要的各种字符都写入字符范围中,增加字符个数范围要求即可启用摇一摇问题:学生登台
29、实操完成设计(10分钟)学生思考问题回答问题,登台实操、听讲环节3-使用js函数完成密码和确认密码一致性判断(35分钟)重点:判断两次密码一致性的函数的定义和调用难点:使用js代码阻止非法数据提交的原理教学方法:问题导向、启发引导、实例演示法教师活动学生活动(1)启用摇摇回答问题:对于两次密码的一致性判断,为何不能使用HTML5正则表达式完成?教师加以说明,引出使用js完成两次密码一致性判断的必要性(4分钟)。学生思考并回答问题听讲并实操(2)解决难点:使用js代码阻止非法数据提交的原理(设计3个连环扣问题引导学生思考)第一个问题起回答:点击什么按钮时能够将注册界面的数据提交给服务器?第二个问
30、题头脑风暴:点击SUbmit按钮时,触发的是哪个元素的什么事件?对应的事件属性是什么?第三个问题抢答问题:你认为在属性Onsubmit中使用什么样的js代码可以阻止数据提交给服务器?教师对三个问题分别进行讲解动画演示onsubmit=rctunfalsetruc的应用,之后,教师总结若是OnSUbmit设置为returnfalse,无论数据是否符合要求,都不会将数据提交给服务器;若是OnSUbmit设置为returntrue,无论数据是否符合要求,都将数据提交给服务器提出两次密码一致的验证函数的功能要求(10分钟)学生思考问题、回答问题、听讲(3)使用流程图讲解判断两次密码一致的操作流程启用摇
31、一摇问题:如何改成单分支结构?(4分钟)学生回答问题、听讲(4)通过设置障碍完成课堂练习:函数的定义并调用分别设置函数内部缺少returnfalse、调用函数时缺少return运行效果学生完成练习根据执行结果提出问题:出现确认密码错误提示信息之后,用户会有怎样的感受和诉求?引导学生优化函数代码结构,引出课程思政-培养学生精益求精的工匠精神,设计友好用户界面,提升用户体验(17分钟)环节4-课中考核与总结(10分钟)(1)完成职教云表单数据验证相关课堂小测试(5分钟)(2)学生总结本次课的收获(2分钟)(3)教师总结重难点及学生遇到的各种问题(3分钟)课后活动学生活动(总结与能力提升)教师活动(
32、教学总结与反思)(1)完成职教云课堂中的课后总结。(2)能力提升与拓展:使用正则表达式对手机号进行验证时并没有排除0号码的问题,若是要求手机号中不能允许出现连续4位或4位以上的0,完成相关验证。(1)教学效果:本次课的教学目标全部完成,根据课堂考核效果来看,85%以上学生对重点难点都能理解掌握,约9%的学生对returnfalse的问题处于似懂非懂的状态,需要课后继续巩固,另有6%的同学没有达到要求,针对这几个同学,以额外布置作业的方式督促他们学习。(2)教学特色:应用动画展示难点,抽象转为形象;问题贯穿时刻保持课堂活力。(3)教学反思:表单数据验证中,数据合法性验证函数内外的两个return
33、false的应用难度非常大,以前的教学中都是通过老师反复说明,学生只是根据结果去想象非法数据如何被阻止,使用了动画展示之后,抽象转为形象,达到了很好的效果,为进一步提升教学质量,在以后的教学中要多使用动画演示更杂的功能。5-2验证码的作用与创建课程内容信息说明所属任务任务五邮箱注册和登录功能实现已有基础(学情)已经完成了本任务中的邮箱注册界面的设计和表单数据验证,具备了项目基础。教学目标知识目标1 .理解在网站中应用验证码的重要性2 .掌握随机产生指定范围和个数验证码字符的方法3 .掌握创建图片、输出图片、在图片中输出文本的方法能力目标1.能够使用rand()range。、array_merg
34、e()simagecreatetruecolor()、imagettftext()等函数生成图片验证码2.拓展验证码字符范围,培养举一反三的创新思维和创新设计能力素质目标(包含课程思政)1 .针对网站中的各种可能的安全隐患以及字符角度颜色的精细设置,培养精益求精的工匠精神2 .养成代码规范习惯,提高排错能力重占1 .产生指定范围、指定个数的验证码字符2 .使用函数生成并输出图片3 .使用函数imagettftext()在图片中输出字符难点1 .产生验证码字符的操作流程2 .如何理解输出页面文本或元素与输出图像之间的互斥性3 .如何设置字符在图片中的坐标教学策略信息化手段应用交互课件、动画演示流
35、程图教学方法讨论法、启发引导、问题导向、讲授法学习方法课前预习、课中探究、课后练习与拓展课前活动及需要时间教师活动及内容学生活动及内容L布置学生观看如下视频,设计翻转课堂问题,安排预习作业(图片验证码预习作业)5-5.2-1函数range。、array_merge()和rand()5-5.2-2图片验证码功能及要求说明5-5.2-3产生图片验证码字符5-5.2-4图像的创建及输出55.25设置验证码字符的字体、角度和坐标5-5.2-6以随机颜色和角度显示字符2 .设计职教云头脑风暴问题、抢答问题、摇一摇问题和课堂讨论问题,为课堂使用做准备3 .搜索课堂教学中播放的验证码相关视频及其他材料4 .
36、批阅学生的预习作业1 .观看视频5-5.2J(约5分钟)5-5.2-2(约3分钟)5-5.2-3(约8分钟)5-5.2-4(约6分钟)5-5.2-5(约5分钟)5-5.2-6(约5分钟)2 .思考翻转课堂问题,完成预习作业(约20分钟)3 .完成“课前预习中的难点问题调查问卷”课中活动(检查预习效果,讲解重点难点)及时间安排1 .导入模块-说明应用验证码的重要性(4分钟)2 .验证码字符的随机产生(26分钟)3 .创建并输出图片(15分钟)4 .在图片中输出字符(35分钟)5 .课中考核与总结(10分钟)环节I-导入模块:应用验证码的重要性(4分钟)重点:说明验证码的作用,引出核心内容教学手段
37、:热点新闻冲击教师活动学生活动(1)显示没有验证码的注册界面,启用抢答问题:缺少验证码的注册界面,会有什么后果?教师讲解没有验证码的危害暴力注册导致的数据库数据量膨胀问题,说明应用验证码的重要作用(2分钟)学生思考并回答问题、听课(2)启用课堂讨论未来的程序猿,你该怎样做?课程思政:教导学生开发网站或者手机app时要尽最大努力满足客户需求,保护好客户的网站不被恶意破坏,培养学生精益求精的工匠精神(2分钟)参与讨论,思考自己的未来环节2-验证码字符的随机产生(26分钟)重点:产生指定范围内的、指定个数的驳难点:产生验证码字符的流程教学方法:问题导向、设置障碍、启发弓正码字符导法教师活动学生活动(
38、I)检查课前预习效果,启用摇一摇问题:创建图片验证码的三个步骤是什么?为何不能直接使用第一步的结果作为验证码?教师展开讲解(3分钟)学生回答问题、听课(2)启用抢答问题:产生验证码字符的规则有哪些?(2分钟)强调要注重项目需求,按照规则要求完成项目功能学生回答问题(3)解决重点+难点:产生验证码字符的流程如何?(流程图展示讲解)学生听课、回答问题启用头脑风暴问题:产生验证码字符需要哪几个步骤?(5分钟)(4)解决重点:使用代码实现功能(应用交互课件)学生登录技能云平台使用交互课件按照提示完成代码设计,熟悉代码,之后要在真实环境中编写代码实现创新(6分钟)学生练习(5)在代码中设置障碍,学生抢答
39、解决问题,完成重点和难点的考核(10分钟)学生查找解决问题环节3-创建并输出图片(15分钟)重点:创建、调色、填充、输出图片的函数格式难点:如何理解输出页面文本或元素与输出图像之间的互斥性教学方法:问题导向、设置障碍、启发弓导法教师活动学生活动(1)解决难点:如何理解输出页面文本或元素与输出图像之间的互斥性?(设置障碍,出现问题,解决问题加深学生理解)以设置障碍的方式,给定如图所示的有错误代码学生观察代码,思考并回答问题听讲并提供解决问题的方案(告知老师要去掉哪一行代码)echo$string;header(Content-type:imagepngn);$w=100;$h=25;$img=i
40、magecreatetruecolor($w,$h);imagepng($img);16imagedestroy($img);运行代码,启用抢答问题:为什么不能正常输出图像?教师讲解echo输出文本(第10行)与imagepng()输出图像(第15行)之间的互斥性并说明解决问题的方案;进一步引入新的错误(例如程序开始前的一个小空格,或者在代码外围增加),继续观察效果,强调错误的原因,引导学生深入理解这一问题,从而避免类似错误,强调编程的良好习惯,培养精益求精的工匠精神;(10分钟)(2)启用摇一摇操作问题:如何将输出图像的颜色设置为白色?教师简介imagecoloralocate()和imag
41、ef11l()两个函数的作用(5分钟)学生登台实操补充代码将背景色变为白色环节4-在图片中输出字符(35分钟)重点:使用函数imagettftext()在图片中输出字符难点:如何设置字符在图片中的坐标教学方法:观察法、反证法、动画演示教师活动学生活动(1)讲解函数imagellftexl()中的8个参数,强调角度和颜色取值问题讲解之后,给出示例,启用抢答问题:参数14、0、10、20分别代表什么?启用头脑风暴问题:输出字符时哪些因素是随机产生的?启用摇一摇问题:随机产生字符颜色时,三原色分量取值范围为何限制在0-150之间而不是0-255之间?听讲、思考回答问题教师使用反例加以强调;完成字体设
42、置(15分钟)(2)解决难点:如何确定字符的横坐标?(动画演示)启用抢答问题:每个字符所占区域在图像中起始横坐标分别是多少?教师分析说明启用头脑风暴问题:如何在循环体中根据图像宽度100和循环变量$i的取值计算出每个区域起始横坐标$x?请写出公式。教师分析说明启用课堂讨论开动脑筋吧:上面得到的横坐标$x(0,25,50,75)能否作为字符左下角顶点横坐标?为什么?教师分析说明大家起来思考:若要保证字符倾斜45时仍旧能够显示在框内,要将字符向右移动几个像素?怎样计算?教师讲解(12分钟)学生回答问题、听讲跟随教师完成字符横坐标的设置(3)解决难点:确定字符的纵坐标启用摇一摇问题:字符左下角纵坐标
43、能否直接使用24(图像的顶端纵坐标为0,底部为24)?为什么?教师分析说明大家一起来思考:若要保证字符倾斜-45时仍旧能够显示在框内,要将字符向上移动几个像素?怎样计算?教师分析讲解(8分钟)学生回答问题、听讲跟随教师完成字符纵坐标的设置环节5-课中考核与总结(10分钟)(1)完成职教云创建图片验证码相关课堂小测试(5分钟)(2)学生总结本次课的收获(2分钟)(3)教师总结重难点及学生遇到的各种问题(3分钟)课后活动学生活动(总结与能力提升)教师活动(教学总结与反思)(I)在职教云课堂课后活动中做总结。(2)创新应用能力培养:改写随机生成的验证码字符:要包含小写英文字母、需要生成的字符由4个变
44、为6个。(1)教学效果:本次课的教学目标全部完成,根据课堂考核效果来看,78%以上学生对重点难点都能理解掌握,约16%的学生对字符坐标的设置缘由不是很理解,但是能够记住怎样用,需要课后继续巩固,另有6%的同学没有达到要求,针对这几个同学,要求小组长课下督促他们学习。(2)教学特色:流程图动画解决程序流程难点;交互课件帮助学生熟悉复杂代码;动画演示不同角度不同坐标的字符效果,通过视觉冲击,帮助大家理解难点问题;问题贯穿时刻保持课堂活力。(3)教学反思:学生回答问题占用时间较多,挤压了课堂练习的时间,以后的教学中要适当控制学生回答问题的时间。5-3验证码的升级、加载与刷新课程内容信息说明所属任务任务五邮箱注册和登录功能实现已有基础(学情)已经完成了本任务中的邮箱注册界面的设计和表单数据验证,具备了项目基础;已经设计了不带干扰因素的图片验证码。教学目标知识目标1 .掌握在验证码图片中添加干扰因素的做法(函数imageline()imageselpixel()的