常见问题解决

一、HTTP的常见响应码:

2:成功类php

200:请求成功node

3:重定向(服务器须要浏览器从新请求)ajax

304: not modified    文件未修改数组

4:客户端错误浏览器

403: Forbidden缓存

404: Not Found安全

5:服务器错误服务器

二、JS与PHP的数据分类(写时复制?)

JS:app

基本数据类型:number、string、boolean、undefined、null框架

符合数据类型:  array、object、function

PHP:(三大类八小类)

 标量数据类型: int  float  bool  string

 符合数据类型: array   object

 特殊数据类型: null      resource

三、布局样式和定位

         1)display

         2)overflow 内容溢出

         3float:主要解决了块元素共存一行的问题

                   A、任何设置浮动的元素都将转化为块元素

                   B、设置float的元素将会浮起来

                   C、其后未设置浮动的元素将会来添补元素在文档流中的位置

                   D、浮动的清除:①在未浮动层前设置清除浮动层 clear:both

                                                 ②在未浮动层上设置清除浮动

                                                 ③在父元素上设置清除浮动

定位:

①   绝对定位:fixed

会脱离文档流,相对于窗口进行定位

         ② 相对定位:relative

            不会脱离文档流,相对原来的位置进行定位(停薪留职)

         ③ 绝对定位:absolute

                   会脱离文档流,相对于父元素或窗口进行定位

         一般将父元素设置为相对定位,子元素设置为绝对定位

区别:

浮动一般是将块元素放置在一行当中进行排版,不能超过父元素,不能控制位置,只能有两层

定位一般是设定元素的位置,能够超出父元素,能够控制位置,能够有多层

四、盒子模型

         W3c: width(content) + padding + border + margin

         IE:    width(content+padding+border)+margin

若是有使用DTD的约束则为W3C盒子模型,没有DTD则使用什么浏览器就是什么盒子

五、GET和POST请求的区别

         ①传递的参数不一样:get请求是追加在url中,post是隐藏在请求头的空白行中

         ②传递参数的大小不一样:get最大能够传递2k,post从理论上是没有限制的,但php.ini中的限制是8M,浏览器Firefox为10M,在程序中通常限制为2M

③安全性不一样:post高于get请求

④传值的类型不一样:get请求传递字符串,post请求能够传递中文字符和二进制数据

⑤请求头的信息也是不一样的:post包含有:

content-type:application/x-www-form-urlencoded

 在Ajax中使用原生的代码的时候也是须要加上此请求头

六、Ajax

释义:A:Asynchronous :异步

                     J:  JS

                     A:  and

                     X:  xml

         异步JS和xml

 

①Ajax对象的建立

         W3C: Xhr = new XMLHttpRequest()

         Ie: xhr = new ActiveXObject(‘Microsoft.XMLHTTP’)

②Ajax的使用步骤

a)       建立ajax对象(经过try{return new XMLHttpRequest()}catch(e){}异常机制来解决兼容性问题)

b)       设置回调函数 xhr.onreadystatechange=function(){

e) 判断与执行

Xhr.status==200&&Xhr.readyStatus==4

}

c)       初始化ajax对象xhr.open(‘get’,’?.php’)指定请求方式和请求页面

d)       设置请求头信息【post请求】

(xhr.setRequestHeader (‘content-type’,’application/x-www-form-urlencoded’))

e)       发送信息xhr.send(null) 【get请求发送的参数带在url后,post参数组装后send发送】

IE浏览器下缓存的解决

         A、随机数 

B、时间戳 

C、经过设置缓存文件的最后修改时间(在某段时间内第二次请求某个页面时服务器会检查文件的最后的修改时间,来判断文件是否存在于客户端中)

setRequestHeader(‘If-modifiy-since’,‘0’)                    // 需设在open后

D、在服务器端设置

Heaer(‘Cache-control:no-cache; must-revalidate’);       // 无缓存必须从响应

         缓存的好处:减小对放武器的请求次数,加快响应时间

七、XML

释义:可扩展的标记语言,主要用于数据的存储和传输(完成大批量数据的传输,超过两条)

①   PHPJSxml的解析的区别

PHP: 在php中为非标准的DOM模型 à 将值存储在最后的子节点中

JS: 在js中为标准的DOM模型 à 将值存储在其余的节点

         用法:

PHP DOM模型:主要实现数据的增、删、改功能

SimpleXML模型:主要实现数据的查询功能

 

a)         DOM模型解析查询(标准型)

$dom=new DOMDocument(‘1.0’,’utf-8’);                               // 面

$dom->load($str);

$nd=$dom->getElementsByTagName(“TagName”);         //串

$value=$nd->item(0)->nodeValue                                             // 点

b)        SimpleXml模型查询(非标准型)

$xml=simplexml_load_string($str);

$first = $xml->first;

$second= $xml->second;

c)         Xpath指令查询

  建立一个simpleXml 模型使用Xpath指令来进行查询

d)  JS中的解析xml数据(标准型)

var xml=xmlHttp.responseXML; // js中接收返回的xml数据

nodevalue=xml.getElementsByTagName(“TagName”). node[0].childNodes[0].nodeValue;

②   若是服务器端想要返回xml数据则必须设置

header(‘content-type:text/xml;charset=utf-8’)

八、DTD约束

为何要使用DTD约束?               document type definition

DTD约束的做用是约束文档的类型(框架型/普通型/严格型)以及文档的书写规范(容许出现的元素名称、属性及元素出现的顺序等)

①   元素(节点)的定义

(#PCDATA)  能够包含任何的数据内型,但不能包含子元素 <name></name>

(#EMPTY)   不能包含任何的数据内型,能够包含属性

(#ANY)                能够包含任何内型的子元素,经常使用在根节点

(子元素)             只能出现一次

(子元素1,子元素2….) 能够出现多个子元素

(子元素1*,子元素+,子元素?)

(子元素1 | 子元素2 | 子元素3)  互斥元素,不能同时出现

②   属性的定义

基本语法:

<!ATTLIST        元素名称        属性名称        属性类型         默认值>

 

属性的内型和默认值是能够任意的搭配的

 

属性类型:

CDATA  字符或数字

(en1|en2|……)  枚举类型

ID  属性惟一   IDREF   引用

 

默认值:

#REQUIRED    必填

#IMPLIED                 可选

#FIXED                      固定值

值                               默认值

九、HTML

HyperText Markup Language(超文本标记语言)

 

十、Linux下文件权限问题

在Linux下文件都有三个权限分别为:拥有者权限r,所属组成员权限w,组外用户权限x

 -rwx à111(二进制)à7                  // - 表明文件

 dr-x à101à5                                    // d 表明文件夹

 r-x à101à5

相关文章
相关标签/搜索