资源描述
,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,单击此处编辑母版标题样式,*,PHP 动态网站程序设计(,第2版,),课程介绍,课程名:Web动态网站开发,教材:PHP 动态网站程序设计,学时:,48学时,(讲授32学时+上机16学时),课程性质:必修考试:,闭卷,,,第20周,课程基本要求,目标:学会制作简单的,动态网站,及各种,功能模块,学习内容:掌握PHP的基本语法和内置函数、Web交互编程和PHP操作数据库的方法,授课内容:第1、3、4、5、6、7、8章,重点:第3、4、5、7章,为什么要学做网站,企业宣传展示的平台,企业与客户交流的渠道,开展电子商务的主要平台,学习网站制作的过程,HTML,CSS,JavaScript,ASP,Ajax,PHP,JSP,客户端语言,服务器端编程,招聘网页设计人员的要求,能手工编写代码,懂DIV+CSS布局(Web标准),会PHP,会Ajax,摘自电脑报,第1章 动态网站制作概述,什么是动态网站,动态网站是一种Web应用程序,特点:使用,HTTP协议,作为通信协议,通过网络让,浏览器,与,服务器,进行通信的计算机程序,用户,网站,进行交互,动态网站可以做什么,动态生成HTML代码,显示数据库中的数据,向数据表中添加数据,查询数据库中的数据,动态生成HTML代码,?,for($i=3;$i,第次Hello World!,循环语句,显示数据库中的数据,向数据表中添加数据,添加记录的步骤,浏览器,Web服务器,数据库,连接数据库,数据库,执行插入语句,$title=$_POSTtitle,获取数据,mysql_query(“Insert into”),查询数据库中的数据,提供一个表单供用户输入查询关键字,将用户提交的关键字作为条件用Select语句进行查询,将查询的结果(返回的记录集)显示在网页中。,软件的结构演变,桌面软件,网络软件,C/S结构,B/S结构,1.1.1 B/S结构和C/S结构,C/S(Client/Server),客户机/服务器结构,B/S(Browser/Server),浏览器/服务器结构,C/S结构,B/S结构,1.1.2 动态网站的组成和运行,Web应用程序是一种B/S结构的软件,Web应用程序是基于Web的,依赖于通用的Web浏览器来表现它的执行结果,需要一台Web服务器,在服务器上对数据进行处理,并将处理结果生成网页,运行Web应用程序的要素,Web服务器:响应用户提交的HTTP请求,浏览器:解析HTML文件,HTTP通信协议,浏览器和服务器的作用,浏览器,Web服务器,HTTP请求,HTTP响应,浏览器和服务器也可以是一台电脑上的两个程序,浏览器发送HTTP请求的方式,输入网址,提交表单,1.2.1 静态网页和动态网页,静态网页:是纯粹的HTML页面,网页的内容是固定的、不变的,动态网页:网页中的内容会根据用户请求的不同而显示不同的内容,网页的类型,静态网页,采用HTML、CSS、JavaScript编写的网页。文件扩展名是.htm 或.html,网页,动态网页,采用 PHP、JSP、ASP、CGI 程序动态生成的网页。文件扩展名是.asp、.jsp、.php、.cgi等。,静态网页的执行过程,浏览器,Internet,Web服务器,HTML文件,HTML文件,网页,为什么需要动态网页,问题:网站拥有的页面非常多,怎么办?,如何实现与用户的交互,如保存并显示用户的留言,动态网页的执行过程,浏览器,Internet,Web服务器,PHP文件,HTML代码,网页,Web服务器对PHP进行解释执行,浏览器对HTML进行解释执行,PHP简介,PHP,即“Hypertext Preprocessor,超文本预处理器”,是一种服务器端的,跨平台的、开放源代码的多用途脚本语言,可以嵌入到HTML中。,由 Rasmus Lerdorf 在1994年发明,世界编程语言排行榜,PHP发展到今天,具备了很多优势。,(1)易学好用,(2)免费开源,(3)良好的可扩展性,(4)平台无关性(跨平台),(5)功能全面,(6)数据库支持,(7)面向对象编程,PHP的优势,HTML内嵌式的脚本语言,PHP脚本程序中可包含文本、HTML代码以及PHP代码。例如,/这是我的第一个PHP程序:,注意:PHP代码通常以符号,“,”,结束,这两个符号叫做PHP的,定界符,。,PHP程序文件名中的扩展名通常使用,“,.php,”,,例如hello.php。,关于Web服务器,Web服务器主要是指一种软件,它具有解释执行PHP代码的功能,PHP的Web服务器软件是Apache,要运行PHP程序,必须先安装Apache,这样才能对PHP程序进行解释执行,提示:PHP文件不能通过双击文件直接用浏览器打开,因为这样PHP代码没有经过Web服务器的处理。,学习动态网站制作的基础,认识文件夹和文件,D:testDebug,D:testDebug.htm,练习,5-3.php test.html D:Appservwww,文件夹,文件,文件,文件,文件夹,数据库基础,熟悉SQL语句的书写,Select title,date from news,表名,字段名,HTML基础,需要认识一些HTML标记、属性和属性值,1.3 安装PHP的运行环境,1.3 安装PHP的运行环境,AppServ的安装,AppServ 2.5.9,Apache2.2,PHP 5.1,MySQL 5,phpMyAdmin,图1-9 选择安装位置,图1-10 选择安装组件,图1-11 Apache服务器信息的配置,配置MySQL数据库服务器,测试AppServ是否安装成功,AppServ的安装目录,phpMyAdmin的用户登录框,用户名是root、密码是111,phpMyAdmin的操作界面,1.新建第一个PHP程序,2.运行PHP文件,localhost/1-1.php,查看源代码,localhost/1-1.asp,关于localhost,localhost 本机网站的主目录,d:web,即Apache的主目录,本机域名,网站,域名,主目录,1对1,1对1,1对1,D:AppServwww,域名与主目录的关系练习,设Apache的主目录为D:AppServwww 则要运行D:AppServwwwabc.phpD:AppServwwwabab.phpD:AppServabc.php应在地址栏输入什么URL?,将主目录替换成域名localhost即可,关于localhost,设Apache的主目录为D:www,localhost/admin/admin.php打开的是:,localhost/admin.php打开的是:,如果Apache的主目录是F:tesweb呢,域名与主目录的关系练习,d:web师院的域名师院网站的主目录,打开的是?,怎样访问:d:webwebttt.html?,运行PHP程序的步骤总结,1.3.3 Apache的配置,主目录的设置,默认文档的设置,虚拟目录的创建和访问,默认端口的修改,httpd.conf文件,是Apache的配置文件,修改httpd.conf,1.主目录的设置,httpd.conf文件的第240行。将:,DocumentRoot D:/AppServ/www,修改为:,DocumentRoot E:/Web,httpd.conf文件的第268行。将:,修改为:,保存文件后,再重启Apache才能使设置生效,2.默认文档的设置,所谓默认文档,就是指网站的主页(首页),在httpd.conf文件的第303行中,DirectoryIndex index.php index.html index.htm,虚拟目录的作用,什么时候需要虚拟目录,部署多个网站时,如果要部署多个网站,可以将一个网站的目录设置为Apache的主目录,将其他每个网站的目录都设置为虚拟目录。,这样,每个网站相当于一个独立的应用程序(Application),就不会发生这个网站修改了别的网站公共变量(如Session变量)的情况,虚拟目录的创建和访问,找到httpd.conf文件的第360行,在:,后添加一段:,Alias/eshop E:eshop,Options-Indexes FollowSymLinks,AllowOverride None,order allow,deny,Allow from all,访问虚拟目录下的文件,要运行E:eshopadmin目录下的index.php文件(”E:eshop”对应虚拟目录”eshop”),,localhost,/,eshop,/,admin/index.php,本机域名,虚拟目录名,路径和文件名,默认端口的修改,在httpd.conf文件的67行。将:,Listen 80,改为:,Listen 88,以后访问网站主目录就必须使用“域名:端口”的形式(如localhost:88),实验:部署一个网站,步骤:,将网站压缩文件解压到一个目录中,将该目录设置为网站主目录,1.3.5 配置DW开发PHP程序,Dreamweaver对开发PHP程序有很好地支持,包括代码提示,自动插入PHP代码等,使开发人员能在同一个软件环境中制作静态网页和动态程序,新建站点的步骤(演示),新建动态站点第一步(访问网站的URL),第二步(选择服务器技术),第三步(设置站点主目录),第四步,站点文件面板,1.4.1 Web编程语言,CGI:最早能够动态生成HTML页面的技术,PHP:1994年,Rasmus Lerdorf发明,ASP:1996年,Microsoft公司推出了ASP 1.0,JSP:19971998年,SUN公司相继推出了Servlet技术和JSP(Java Server Pages)技术,ASP.NET:2002年,Microsoft公司正式发布了.NET FrameWork和Visual Studio.NET,动态网页与Web服务器,ASP,ASP.Net,PHP,JSP,Web服务器,IIS,IIS,Apache,Tomcat,运行方式,解释执行,预编译,解释执行,预编译,跨平台性,Windows平台,Windows平台,任何平台,任何平台,文件扩展名,.asp,.aspx,.php,.jsp,1.5 Web编程的新趋势,传统Web应用的不足,独占式的请求,频繁的页面刷新,简略的用户交互界面,Web编程的新技术,Ajax技术,Microsoft的Silverlight技术,Adobe公司的Flash/Flex技术,Ajax技术的特点,不属于任何软件厂商,代表一种开源风格,不是一种编程语言,几种技术结合的新应用,采用的大部分都是早已存在的技术,基于现有的浏览器,不需要安装任何的插件,因此兼容性最好,习题,3.以下哪种技术不是服务器端动态网页技术A.PHPB.JSPC.ASP.NETD.Ajax,4.配置MySQL服务器时,需要设置一个管理员账号,其名称是()A.adminB.rootC.saD.Administrator,5.如果Apache的网站主目录是E:eshop,并且没有建立任何虚拟目录,则在浏览器地址栏中输入localhost/admin/admin.php将打开的文件是:,习题,6.PHP的配置文件是,,Apache的配置文件是,。,7.如果Apache的网站主目录是E:eshop,要运行E:eshopabcrs123.php文件,则应在浏览器地址栏中输入,,如果E:eshop是虚拟目录eshop,则要运行E:eshopeshop.php文件,应在浏览器地址栏中输入,有一个PHP文件,存放在D:AppServwww目录下,请问如果在“我的电脑”中双击该PHP文件,该文件可以运行吗?,第2章 HTML,HTML文档的基本结构,HTML标记(Tags),标记是HTML文档中一些有特定意义的符号,这些符号指明,内容的含义或结构,。标记总是放在三角括号中,大多数标记都是,成对,出现的,表示开始和结束。,受,标记影响的内容,标记名称,起始标记,结束标记,带有属性的HTML标记的结构,/,例2 找出下面html代码的错误,下列HTML元素的写法错在什么地方?,Congratulations!,linked text,This is a new paragraph,The list item,HTML标记 的分类,为便于记忆,可将标记按出现的情况分为:,双标记,:大部分标记都是双标记,单标记,:,,成组标记,:table,form,ul,ol,dl,frameset,fieldset及其子标记等,HTML标记(续),双标记,语法:,受标记影响的内容,例:,制作网页是我的爱好。,衡阳师范学院,衡阳师院,HTML标记(续),单标记,语法:,例:,HTML元素的概念和分类,把HTML标记(如)和标记之间的内容组合称为,HTML元素,1.根据元素有无内容分类,“有内容的元素”是由起始标记、结束标记和两者之间的内容组成,其中元素内容既可以是文字内容,也可以是其他元素。,“空元素”则只有起始标记而没有结束标记和元素内容,可见“空元素”对应单标记,2.根据元素的排列方式分类,行内元素(inline),是指元素与元素之间从左到右并排排列,只有当浏览器窗口容纳不下才会转到下一行,块级元素(block),是指每个元素占据浏览器一整行位置,块级元素与块级元素之间自动换行,从上到下排列。,2.2.3 文本格式标记,1)段落标记这是一段文本,2)标题标记,这是文章的一级标题,3)换行标记,例:春天来临,,又到了播种耕种的季节,2.2.3 文本格式标记(续),align属性,这将居中显示,文本中的字符实体,“”代表符号“”,列表标记,无序列表,CSS教程,DOM教程,XML教程,有序列表,定义列表,2.2.5 图像标记,属性,含 义,src,图片文件的URL地址,alt,当图片无法显示时显示的替代文字,title,鼠标停留在图片上时显示的说明文字,align,图片的对齐方式,共有9种取值,width、height,图片在网页中的宽和高,单位为像素或百分比,2.2.6 超链接标记,百度,属性名,说明,属性值,href,超链接的URL路径,相对路径或绝对路径、Email、#锚点名,target,超链接的打开方式,_blank:在新窗口打开;,_self:在当前窗口打开,默认值,_parent:在当前窗口的父窗口打开,_top:在整个浏览器窗口打开链接,窗口或框架名,title,提示文字,属性值是任何字符串,超链接的种类根据源对象划分,1),用文本做超链接,:,首页,2)用图像做超链接:,使用图像做超链接后,图像会自动增加边框,可设置边框为0去掉,热区链接,热区链接,:使用,在图像上定义一幅地图,地图上可包含多个热区,每个热区用,单标记定义,2.3 表格标记,、是表格中最基本的标记,表格由标记定义,行由标记定义,每行又被分成许多个单元格,表格中的单元格能容纳网页中的任何元素,如图像,文本,列表,表单,表格等。,下面这段代码在浏览器中如何显示,row 1,cell 1,row 1,cell 2,row 2,cell 1,row 2,cell 2,2.3.3 单元格的合并属性,课程表,星期一,看代码画表格,网页中表单的作用,表单主要功能:提供用户输入的界面,并提交浏览者填写的信息给服务器。,网页中的表单,用户注册表单,提交搜索表单,用户登录表单,Web,应用程序,访问者将表单数据提交给服务器处理,保存提交的数据或对提交的数据进行查询,Web应用程序对表单进行处理,表单代码的组成,用户:,一个表单的代码至少应包括,3个,组成部分,:,(1),表单标记,:,(2),表单元素(如标记),:例如文本框、下拉菜单、复选框和单选框等。,(3),提交按钮(如标记):,用来提交数据,表单代码中常见的错误,没有标记,一个表单出现多个标记,多个标记嵌套,这些错误会使表单无法提交数据,表单标记,标记用来创建一个表单域,即定义,表单的开始和结束,位置,这一标记有几方面的作用。,第一,限定表单的范围。,第二方面,携带表单的相关信息,例如,处理表单的脚本程序的位置(action)、提交表单的方法(method),等。,GET和POST方式提交表单,用户名:,密码:,localhost/5.php?userName=tang&PS=123,localhost/5.php,GET方式,POST方式,POST,form标记常见属性action,action:接一个动态网页名,设置action属性后会产生两个作用:,1点击该表单的提交按钮将会链接到该网页,2 同时还会将表单中输入的数据发送给该网页进行处理,如果将action属性值设置为空将由当前网页对提交数据进行处理,form标记的属性面板,name,target,method,action,enctype,表单中的元素,DW中表单对象与标记的对应关系,表单域form标记中包含的表单标记主要有input,select(option),textarea等,在DW中表单对象面板中的对象与这些标记的对应关系是:,input-表单元素的通用标记,input标记是收集用户输入信息的标记,是一个单标记,其,含义由type属性决定,。,input标记的必备属性(必须具有的属性),name:表单元素的名称,由于表单中通常有很多表单元素,服务器要根据name属性获取相应元素的内容。,type:确定input标记的含义,其他常见属性 value(input标记的取值)size:文本域的宽度,input-type属性的取值,input标记的type属性总共有10种取值,含义如表1所示:,type属性值,描述,text,文本域,password,密码域,file,文件域,checkbox,复选框,radio,单选框,button,普通按钮,submit,提交按钮,reset,重置按钮,hidden,隐藏域,image,图像域(图像按钮),文本域type=text,文本域举例:,查询:,input标记中的size属性是定义文本域的宽度,文本域属值,描述,name 或id,文本域的名称或id,maxlength,文本域的最大输入字符数,size,文本域的宽度,value,文本域的默认值,单选框,type=“radio”,单选框举例:,女性 男性,checked属性设定初始时单选按钮哪项处于选定状态,同一组单选按钮,name属性的值,必须相同,这样这一组单选框中只有一个能被选中。,复选框,type=“checkbox”,复选框,可以选中多项,看书 上网 听音乐,文件域,type=file,供上传文件用,需要服务器端的上传组件配合,文件域对表单标记form有特殊要求,method必须设为post,MIME类型必须为multipart/form-data,按钮,提交按钮(type=submit),将表单中所有具有name属性的元素内容发送到服务器端指定的应用程序,重置按钮(type=reset),用户在填写表单时,若希望重新填写,单击该按钮将使全部表单元素的值还原为初始值,普通按钮(type=button),该按钮没有内在行为,但可用javascript为其指定动作,图像域,type=image,即图像按钮,用一张图片做按钮,功能和提交按钮相同,下拉菜单和标记,标记是下拉菜单框或列表框标记,是一个标记的含义由其size属性决定的元素,如果该标记没有设置size属性,那么表示为下拉菜单框,如果设置了size属性,则变成了列表框。下列列表框中的每一项由标记定义。,例如:你的籍贯:,湖南,广东,江苏,四川,去掉size属性后,多行文本域标记,是多行文本域标记,用于让浏览者输入多行文本,如发表评论或留言,跟帖。,这是一个有4行,每行可容纳40个字符,换行方式为虚拟的多行文本域。,下面的表单元素代码都有错误,你能指出它们分别错在哪里吗?,Your story.,一、什么是 XHTML,XHTML 是英文 Extensible HyperText Markup Language 的缩写,中文意思是“可扩展超文本标记语言”。,XHTML 1.0 是以 XML 1.0 的语法规范对 HTML 4.0 的改进。,XHTML 是用于描述网页结构的标准语言。它不建议使用HTML中一些过时的描述表现的HTML标记和属性,对代码的书写要求也更加严谨,二、XHTML 文档的类型,XHTML 1.0 分为三种文档类型,XHTML 1.0 Transitional(过渡的),允许使用表现层的标记和属性,但要符合 XHTML 的语法。,XHTML 1.0 Strict(严格的),不允许使用任何表现层的标记和属性。,XHTML 1.0 Frameset(框架的),用于框架结构的网页。,三、DOCTYPE(文档类型声明),DOCTYPE 声明是(X)HTML 文档开头处的一行或两行代码,用于告知浏览器(X)HTML 是哪个版本。,XHTML 语法,标记名称与小于号之间不能留有空格。,欢迎光临我的文学小屋!,欢迎光临我的文学小屋!,正确:标记名称,与小于号之间无空格,错误:,标记名称与小于号之间有空格,XHTML 语法,标记和属性的名称都必须使用小写。,正确:标记和属性的名称使用小写,错误:标记名称使用大写,错误:属性名称使用大写,XHTML 语法,属性值必须使用双引号。,首页,首页,正确:属性值使用双引号,错误:属性值不使用双引号,XHTML 语法,标记被正确的嵌套使用。,登鹳雀楼是唐朝王之涣的诗。,登鹳雀楼是唐朝王之涣的诗。,正确:标记嵌套,错误:标记交叠,XHTML 语法,关闭双标记。,欢迎光临文学小屋!以下是最新作品。,欢迎光临文学小屋!以下是最新作品。,正确:关闭标记,错误:未关闭标记,XHTML 语法,关闭单标记。,正确:关闭标记,错误:未关闭标记,XHTML 语法,属性不能被缩减。,正确:完整描述属性,错误:缩减属性,2.6 CSS基础,CSS样式规则的组成选择器,一条CSS样式规则由,选择器(selector),和,声明(declarations),组成。,选择器是为了选中网页中某些元素的,选择器可以是一个,标记名,,表示将网页中该标记的所有元素都选中,h1,color:red;,font-size:25px;,选择器,属性,值,属性,值,声明,声明,最常用的CSS属性,CSS属性,含义,举例,font-size,字体大小,font-size:14px;,color,字体颜色,color:red;,line-height,行高,line-height:160%;,text-decoration,文本修饰(如增删下划线),text-decoration:none;,text-indent,文本缩进,text-indent:2em;,background-color,背景颜色,background-color:#ffeeaa;,在HTML中引入CSS的方法,HTML和CSS是两种作用不同的语言,必须通过一些方法,将CSS与HTML挂接在一起,才能正常工作。,在HTML中,引入CSS的方法有,行内式,嵌入式,导入式,链接式,行内式,html标记都有一个通用的style属性,行内式就是在该属性内添加CSS属性和值,如:,嵌入式,h1 color:red;font-size:25px;,链接式,链接式是在网页文档头部通过标记引入外部CSS文件,格式如下:,导入式,导入式是通过CSS规则中的import指令来导入外部CSS文件,import url(style2.css);,链接式和导入式的比较,链接式和导入式的目的都是,将一个独立的CSS文件,引入到HTML文件,其优点是可以让很多个网页共享一个CSS文件,在制作网站时主要应采用,链接式,方法引入CSS,使网站内的所有网页风格统一。,链接式和导入式最大的区别在于链接式使用HTML的标记引入外部CSS文件,而导入式则是用CSS的规则引入外部CSS文件,因此它们的语法不同,CSS选择器的分类,标记选择器,类选择器,id选择器,伪类选择器,标记选择器,标记选择器将拥有同一个标记的所有元素全部选中。如:,p,/*标记选择器*/,color:blue;,font-size:18px;,类选择器,.class1,color:green;,font-size:,20px,;,类选择器,属性,值,属性,值,声明,声明,类名,.one,color:red;/*红色*/,.two,font-size:20px;/*文字大小*/,选择器之标记选择器1,应用第一种class选择器样式,应用第二种class选择器样式,同时应两种class选择器样式,h3同样适用,id选择器,id选择器以,半角“#”,开头,且id名称的第一个字母不能为数字,#id1,color:red;,font-size:30px;,ID选择器,属性,值,属性,值,声明,声明,ID选择器,#one,font-weight:bold;/*粗体*/,#two,font-size:30px;/*字体大小*/,color:#009900;/*颜色*/,ID选择器1,ID选择器2,ID选择器3,ID选择器3,伪类选择器,所谓伪类就是指元素在某个时候的状态。,网页中的链接标记能响应浏览者的点击。a标记有四种状态能描述这种响应,分别是a:link、a:visited、a:hover、a:active,伪类选择器的标记和伪类之间用“:”隔开。,a:hover,color:green;,font-size:20px;,标记名,属性,值,属性,值,声明,声明,伪类名,通过伪类选择器制作动态超链接,伪类选择器可以看成是一种特殊的标记选择器,它用来选中在某种状态下的标记,可以定义标记在四种不同的状态下具有不同的颜色,是否有下划线。一、伪类选择器的书写应遵循,LVHA,的顺序,即出现的顺序应为,a:link a:visited a:hover a:active,。二、各种伪类选择器将继承a标记选择器定义的样式。,CSS的盒子模型,CSS的盒子模型,每个HTML元素都可以看作是一个装了东西的盒子,盒子里面的内容到盒子的边框之间的距离即,填充(padding,),盒子本身有,边框(border),而盒子边框外和其它盒子之间,还有,边界(magin,),如图所示,默认情况下盒子的边框是无,背景色是透明,所以我们在默认情况下看不到盒子,content,padding-top,padding-bottom,padding-left,padding-right,border-top,border-bottom,border-right,border-left,margin-right,margin-left,margin-top,margin-bottom,width,height,边框border属性,盒子模型的margin和padding属性比较简单,只能设置宽度值,最多分别对上、右、下、左设置宽度值。而边框border则可以设置宽度、颜色和样式。,分别是border-width(宽度)、border-color(颜色)和border-style(样式)其中border-style属性可以将边框设置为实线(solid)、虚线(dashed)、点划线(dotted)、双线(double)等效果,边框border属性,边框border属性有个有趣的特点,即两条交汇的边框之间是一个斜角,我们可以通过为边框设置不同的颜色,再利用这个斜角,制作出像三角形一样的效果,内 容,填充padding属性,填充padding属性,也称为盒子的内边距。就是盒子边框到内容之间的距离,和表格的填充属性(cellpadding)比较相似。如果填充属性为0,则盒子的边框会紧挨着内容,这样通常不美观。,当对盒子设置了背景颜色或背景图像后,那么背景会覆盖padding和内容组成的范围,并且默认情况下背景图像是以padding的左上角为基准点在盒子中平铺的,盒子模型的特性,边界值margin可为负,填充padding不可为负,边框border默认值为0,即不显示,行内元素,如a,定义上下边界不影响行高,对盒子模型的思考,边框是实的,我们可以看到实实在在的边框,而填充和边界都是虚的,我们只能看到他们对元素的影响,盒子模型中只能设置两类颜色,即,边框颜色,和,背景颜色,盒子模型可设置三类距离,即边界距margin,填充距padding和边框值border,属性值的简写形式,问题:padding:6px 10px 4px;左填充是多少?,答案:如果给出2个属性值,前者表示,上下边框,的属性,后者表示,左右边框,的属性;,如果给出3个属性值,前者表示,上边框,的属性,中间的数值表示,左右边框,的属性,后者表示,下边框,的属性;,如果给出4个属性值,依次表示,上,、,右,、,下,、,左,边框的属性,即顺时针排序。,各种元素盒子属性的默认值,大部分html元素的盒子属性(margin,padding)默认值都为0;,有少数html元素的(margin,padding)浏览器默认值不为0,例如:body,p,ul,li,form标记等,因此我们有时有必要先设置它们的这些属性为0。,input元素的边框属性默认不为0,可以设置它为0达到美化表单中输入框和按钮的目的。,第3章 PHP基础,PHP的语法,PHP是一种类C语言。,混合了C、Java、Perl语言的特点。,VB,C Java,PHP,ASP,PHP文件代码可包含如下三部分内容,HTML和CSS;,客户端脚本,位于之间;,服务器端脚本,位于“”之间,“”:定界符,表示脚本的开始和结束,PHP代码的基本格式,简单PHP程序示例,以h1标题的形式输出当前日期和时间。,输出函数,时间日期函数,在网页上输出不同大小的字体,第次Hello World!,HTML代码嵌入在PHP代码中,PHP代码嵌入在HTML代码中,PHP代码嵌入在HTML代码中,变量,运行结果,用PHP程序输出HTML代码3-3.php,PHP代码和HTML代码可相互嵌套,?for($i=3;$i,用PHP输出JavaScript代码,输出JavaScript脚本,PHP代码的4种风格,(1)XML风格,这种风格的定界符是“”,(2)简短风格,简短风格的定界符是“”。,(3)脚本风格:,echo 现在是;,(4)ASP风格,这种风格的PHP定界符是“”,PHP代码的注释,(1)单行注释(/或#),(2)多行注释(/*/),编写PHP程序的注意事项,PHP是一种区分大小写的语言,表现在:,PHP中的变量和常量名是区分大小写的,,但PHP中的类名和方法名,以及一些关键字(如echo,for)都不区分大小写。,PHP代码中的字符均为半角(英文状态下)字符,中文字符只能出现在字符串常量中。,在“”内应是一行或多行完整的语句,如不能写成。,在PHP中,每条语句以“;”号结束。,PHP与VB的比较(示例),PHP与VB的比较,PHP,VB,语句结束标志,;,回车符,是否区分大小写,区分,不区分,变量名,i,$i,变量是否需要声明,可声明也可不声明,无需声明,PHP与VB的比较,VB:对象.属性PHP:对象,-属性,If a=5 thenif($a=5),PHP,VB,连接运算符,.,&或+,成员运算符,-,.,是否相等运算符,=,=,逻辑与运算符,&或and,And,取余运算符,%,Mod,PHP语言基础,常量和变量,变量的作用域和生存期,运算符和表达式,PHP的语句,数组,3.2 PHP的常量和变量,常量,普通常量,如10、-3.6、“hello”,符号常量,用一个标识符代表一个常量,define()函数:定义符号常量,符号常量一旦定义就不能再修改其值。,defined()函数:判断一个符号常量是否已定义,PHP预定义的符号常量,常 量,功 能,_FILE_,存储当前脚本的物理路径及文件名称,_LINE_,存储该常量所在的行号,_FUNCTION_,存储该常量所在的函数名称,PHP_VERSION,存储当前PHP的版本号,PHP_OS,存储当前服务器的操作系统名,变量,PHP的变量是一种弱类型变量,即变量无特定数据类型,不需要事先声明,并可以通过赋值将其初始化为任何数据类型,说明,PHP变量必须以“$”开头,区分大小写;,变量使用前不需要声明,PHP中也没有声明变量的语句;,变量名不能以数字或其他字符开头,不能使用系统关键字作为变量名。,变量的作用域,变量的作用域:指该变量在程序中可以被使用的范围。,局部变量,:定义在函数内部的,只有这个函数内的代码才可使用该变量。,全局变量,:定义在所有函数外的,则其作用域是整个PHP文件,减去用户自定义的函数内部,变量的作用域例题,;/全局变量,function fun(),echo$a;/输出空字符串,$a=局部变量、;/局部变量,echo$a;/输出“局部变量、”,fun();,/执行函数,echo$a;?,变量的作用域例题2,global关键字:,在函数内引用外部定义的变量,变量的作用域例题3,使用$GLOBALS全局数组,变量的生存期,变量的生存期表示该变量在什么时间范围内存在。,全局变量,的生存期从它被定义那一刻起到整个脚本代码执行结束为止,局部变量,的生存期从它被定义开始到该函数运行结束为止。,若要在函数运行结束后仍保留局部变量的值,可使用,静态变量,静态变量例题,运行结果为“01234”。,若去掉程序中的“static”,则运行结果为“00000”。,$w=$w+1;,变量根据作用域和生存期分类,类型,说明,全局变量,定义在,所有函数外的变量,,其作用域是整个PHP文件,减去用户自定义的函数内部,局部变量,定义在,函数内部的变量,,只有这个函数内的代码才可以使用该变量,静态变量,是局部变量的一种,能够在函数调用结束后仍保留变量的值。,可变变量,可变变量,:变量的变量,变量引用赋值,“引用赋值”:即新变量引用原始变量的地址,修改新变量的值将影响原变量的值,反之亦然。,引用赋值和C语言中的指针有相似之处,也有区别,引用赋值变量地址传递示意图,地址传递前,hello,10,变量$a,变量$b,执行$b=后,hello,变量$a,变量$b,复习,PHP的变量名必须以$开头。,PHP的每条语句以;结尾。,PHP的输出函数是echo 。,3.1.5 运算符和表达式,3.1.5 运算符和表达式,1.算术运算符,加(+),减(-),乘(*),除(/):$a=5/3 结果为1.66666666667,取余(%)
展开阅读全文