01HTTP服务&AJAX编程
HTTP服务&AJAX编程
一、服务器
1. 什么是服务器?
能够提供某种服务的机器(计算机)称为服务器。
2.服务器的分类:
2.按应用软件:appache IIS tomcat
3.按使用场景:web(http)服务器 数据库服务器 邮件服务器
二、网络基础
1.IP地址
查看本机IP地址 ping、ipconfig、ifconfig
2.域名
域名:IP的面具,为了让用户更容易找到网站
查看域名对应的IP地址 ping
3.DNS服务
DNS服务器:将域名返回给浏览器(其中存储域名-IP信息)
查找优先级 本机hosts文件、DNS服务器
ipconfig /flushdns
4.端口
查看端口占用情况 netstat -an
常见端口号 80、8080、3306、21、22
三、C/S和B/S
1.CS:client(客户端)/server(服务器)
缺点:使用对应的功能,必须下载对应的客户端
如果服务更新了,客户端一般也需要更新
2.BS:B(browser)/server(服务器)
缺点:性能不太好,运算性能不好
效果不够酷炫
四、搭建HTTP服务
Windows + Apache + Mysql + PHP,首字母组合。
1. 安装WampServer
安装wampserver,和普通软件安装无差别,除指定安装路径外,其它默认安装。

2.管理HTTP服务
任务图标绿色为正常启动状态
注意事项:
1、检查网络是不是通的 ping 对方IP
2、检查防火墙是否开启,如果开启将不能正常被访问
3、检查访问权限 Allow from all
4、理解默认索引
5、确保端口没有被其它程序占用
6、“#”表示注释
7、修改配置要格外小心,禁止无意修改其它内容
PHP基础
写法:文件以.php后缀结尾,所有程序包含在<?php /** 这里是代码 **/ ?>

避免使用中文目录和中文文件名
五、 变量
1、变量以$开头 字母/数字/下划线 不能以数字开头
2、大小写敏感(区分大小写)

六、数据类型
字符型、整型、浮点型、布尔型、数组、对象、NULL
单引号&双引号区别
索引数组、关联数组(了解即可)
echo只能打印出来简单类型的值,null和布尔值false都会做隐式转换。
1. 内容输出
echo:输出简单数据类型,如字符串、数值
print_r():输出复杂数据类型,如数组
var_dump():输出详细信息,如对象、数组(了解)

七、运算符
基本与Javascript语法一致
. 号表示字符串拼接符,Javascript中为+号

八、 函数
与Javascript基本一致
函数名对大小写不敏感
默认参数(了解即可)
<?php//php中的函数// js方法// function sayHi(){// console.log("sayHi");// }// sayHi();function sayHi($name='zhangsan'){echo "Hello ".$name;}// sayHi('world!!'); 有参数且传参// sayHi(); 有参数不传参 解决:定义参数的时候,给参数一个默认值 当不传 默认值 传就是当前传的值sayHi('lisi');?>
九、分支、循环语句
与Javascript基本一致
foreach()
<?php// php中的分支语句// 判断语句 switch// js if(条件){}else{}// js switch(条件){ case 选项: 执行的语句; break; default: 执行的语句;break;}$married=false;$name="gaoyuanyaun";if($married){echo "那我就重新找其他明星吧";}else{echo $name." 嫁给我吧!!";}echo "<br>-----------------------<br>";$today="周二";switch($today){case"周二":echo "周二激情四射";break;case"周三":echo "周三还是激情";break;default:echo "我们来睡个觉吧!!";break;}?>
十、数组、遍历数组
<?php// js数组 var arr=new Array(); var arr=[1,2,4];// 定义php数组$arr=array(1,2,"gaoyuanyuan",3.1415926,true);//索引数组// 0 => int 1// 1 => int 2// 2 => string 'gaoyuanyuan' (length=11)// 3 => float 3.1415926// 4 => boolean true// 打印输出PHP数组echo $arr;// 问题:打出索引值 结构 值的类型 长度var_dump($arr);// 遍历php数组// js for// for(var i=0;i<arr.length;i++){// arr[i]// }// count(数组)方法 返回值是数组的长度// $leng=$arr.length;$leng=count($arr);// echo $leng;// php数组和js区别:数组没有length属性// 错误写法// for($i=0;$i<$arr.length;$i++){// echo $arr[$i];// }// 正确的for($i=0;$i<$leng;$i++){echo $arr[$i].',';}echo "<br>-------------<br>";// 在js中有一个数据类型 对象// var obj={// name:"zhangsan",// age:18// }$arrguanlian=array('name'=>'zhangsan','age'=>18);//关联数组// 遍历 foreach既可以遍历索引数组还可以遍历关联数组// foreach(){}// foreach(数组名 as $k=>$v){// }// 遍历关联数组foreach($arrguanlian as $k=>$v){echo $k.'-----'.$v;echo "<br>-------------<br>";}// 遍历索引数组foreach($arr as $k=>$v){echo $k.'-----'.$v;echo "<br>-------------<br>";}?>
十一、系统函数检查数组,常用的函数
count() 计算数组长度
array_key_exists ()检测数组中是否存在key
file_get_contents读取文件
<?php$arr=array('name'=>'congcong','age'=>80);// in_array(判断的值,数组) 是否在数组中 判断一个值是否在数组中 返回值是boolean true 或false$flag=in_array(80,$arr);echo $flag;//array_key_exists()检测数组中是否存在一个键 返回值是boolean true 或false$flag1=array_key_exists('name',$arr);echo $flag1;?>
十二、表单处理
表单name属性的是用来提供给服务端接收所传递数据而设置的
表单action属性设置接收数据的处理程序
表单method属性设置发送数据的方式
当上传文件是需要设置 enctype="multipart/form-data",且只能post方式
$_GET接收 get 传值
$_POST接收 post 传值
$_FILES接收文件上传

1.get方式
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><title>Document</title></head><body><!--1.action 代表数据提交到什么地方 服务器php --><!--2.用什么样的方式提交 get post--><!--用户名密码都应该存在一个变量中name属性的值是作为一个key来存储用户输入的信息的--><formaction="form.php"method="get"><inputtype="text"name="username"id="user"><inputtype="password"name="password"id="pass"><inputtype="submit"value="提交"></form></body></html><!--get提交数据的特点:1.数据的格式 key=value&key1=value1&key2=value2....2.数据内容会显示在地址栏中3.地址栏中的数据是长度有限的 ie浏览器规定不超过10244.get是默认的方式5.get提交方式不太安全--><!--注意:用什么样的方式提交,就要用什么样的方式接受-->
<?php//后台程序如何得到前端提交的数据// $_GET用来接收前端提交过来的数据var_dump($_GET);?>
2.post方式
<!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><title>Document</title></head><body><!--1.在html里 定义数据提交给哪个应用程序2.在html里 设置数据提交的方式3.在html里 设置input的name属性--><formaction="form-post.php"method="post"><inputtype="text"name="username"id="user"><inputtype="password"name="password"id="pass"><inputtype="submit"value="提交"></form></body></html><!--post方式的特点1.提交数据不会显示到地址栏2.数据提交格式是key=value&key1=value1&key2=value2....3.数据可以无限大(理论上)4.post提交方式相对安全-->
<?php// 1.接受前端传过来的数据// 2.返回结果var_dump($_POST);?>
十三、HTML和PHP的混写方式
<?php// html和php混合写// index.html ->index.php//注意 1.php嵌入html 需要写成php格式的文件//2.php代码要写在<?php代码?>//不必把所有的逻辑和数据写在同一标签中$arr=array('www.baidu.com','www.jd.com','www.taobao.com')?><!DOCTYPE html><htmllang="en"><head><metacharset="UTF-8"><title>Document</title></head><body><h1>hello</h1><?phpfor($i=0;$i<count($arr);$i++){// 把网址通过php代码输出成a链接echo '<a href="'.$arr[$i].'">链接</a><br>';}?></body></html>
01HTTP服务&AJAX编程的更多相关文章
- http服务&ajax编程
http服务&ajax编程 1.服务器 前言:通俗的讲,能够提供某种服务的机器(计算机)称为服务器 1.1.服务器类型 按照不同的划分标准,服务可划分为以下类型: 按服务类型可分为:文件服务器 ...
- HTTP服务&Ajax编程知识点导图
- AJAX编程-封装ajax工具函数
即 Asynchronous [e'sɪŋkrənəs] Javascript And XML,AJAX 不是一门的新的语言,而是对现有技术的综合利用.本质是在HTTP协议的基础上以异步的方式与服务器 ...
- 【WCF--初入江湖】12 WCF与Ajax编程
12 WCF与Ajax编程 Ajax Ajax基本原理 AJAX技术的本质原理就是:使用 JavaScript 的 XMLHttpRequest 对象来直接与服务器进行通信. 通过这个对象,JavaS ...
- Ajax编程(HTTP请求与响应及API)详解
AJAX编程 即 Asynchronous [e'sɪŋkrənəs] Javascript And XML, AJAX 不是一门的新的语言,而是对现有技术的综合利用. 本质是在HTTP协议的基础上以 ...
- Linux多线程服务端编程一些总结
能接触这本书是因为上一个项目是用c++开发基于Linux的消息服务器,公司没有使用第三方的网络库,卷起袖子就开撸了.个人因为从业经验较短,主 要负责的是业务方面的编码.本着兴趣自己找了这本书.拿到书就 ...
- 《Linux 多线程服务端编程:使用 muduo C++ 网络库》电子版上市
<Linux 多线程服务端编程:使用 muduo C++ 网络库> 电子版已在京东和亚马逊上市销售. 京东购买地址:http://e.jd.com/30149978.html 亚马逊Kin ...
- 《Linux多线程服务端编程:使用muduo C++网络库》上市半年重印两次,总印数达到了9000册
<Linux多线程服务端编程:使用muduo C++网络库>这本书自今年一月上市以来,半年之内已经重印两次(加上首印,一共是三次印刷),总印数达到了9000册,这在技术书里已经算是相当不错 ...
- Ajax编程中,经常要能动态的改变界面元素的样式
在Ajax编程中,经常要能动态的改变界面元素的样式,可以通过对象的style属性来改变,比如要改变背景色为红色,可以这样写:element.style.backgroundColor=”#ff0000 ...
随机推荐
- D 最熟悉的陌生人 (纪念当年就读的梅州市江南高级中学)
最熟悉的陌生人 作者:张慧桥 “蝶恋花” 我匆匆地跟听众道了声再见,手忙脚乱地关掉了机器,拿出手机按下了一个快捷键…… “嘟…嘟…” 电话响两下后,我听到了那个我在睡梦中都可以认出来的声音. “你现在 ...
- WPF嵌入Unity3D代码下载
这不是大家想找的资源,这是给我的一个帖子用的.当然可以使用u3d自带编译器打开.这是给wpf 嵌入u3d的例子贴用http://bbs.csdn.net/topics/391853486?page=1 ...
- CDN(翻译)
http://dojotoolkit.org/documentation/tutorials/1.10/cdn/index.html 从CDN上加载dojo模块时非常有用的.从CDN上加载Dojo并同 ...
- (C++) System return error codes.
https://msdn.microsoft.com/en-us/library/windows/desktop/ms681385(v=vs.85).aspx
- some code of c
// // main.c // LineList // // Created by Rubert on 16/9/11. // Copyright © 2016年 Study. All rights ...
- java.lang.ClassCastException: com.bjsxt.registration.model.User_$$_javassist_0 cannot be cast to javassist.util.proxy.Proxy
1.懒加载 因为此时用的load懒加载机制,到jsp页面在发送sql语句的时候session已经关闭了.所以会报以上错.可以添加过滤器,使session在请求响应完成后再关闭. 过滤器要配置在stru ...
- 数据库schema设计与优化
原文地址 1. 前言 对于数据库而言,在日常开发中我们主要的关注点有两块,一个是schema的结构设计,另一个就是索引的优化,这两块是影响我们最终系统结构和性能的关键部分,自然也是我们花费精力最多的部 ...
- Could not find com.android.tools.build:gradle:1.3.0.
* What went wrong: A problem occurred configuring project ':TZYJ_Android'.> Could not re ...
- 拥抱高效、拥抱 Bugtags 之来自用户的声音 2
小编按:这是一篇 Bugtags 用户来稿,主要是介绍了使用 Bugtags 前后对测试及解决 Bug 所带来的变化,感谢单车娱乐 App 工程师 - 李斌同学对 Bugtags 的信赖和支持.小编在 ...
- 【转】Oracle表分区
源地址:http://love-flying-snow.iteye.com/blog/573303