前后端交互总结

1、jquery

事件:

鼠标:click, dbclick, mouseenter, mouseleave, hover

键盘:keypress, keydown, keyup

表单:submit, change, focus, blur

文档或窗口:load, resize, scroll, unload

常用函数

获得内容 - text()、html() 以及 val():

text() - 设置或返回所选元素的文本内容html() - 设置或返回所选元素的内容(包括 HTML 标记)val() - 设置或返回表单字段的值

jquery的for循环,为每个匹配元素规定要运行的函数:


$(selector).each(function(index,element))

index - 选择器的 index 位置。element - 当前的元素(也可使用 "this" 选择器)

jQuery addClass() 方法:

$("button").click(function(){ 
    $("h1,h2,p").addClass("blue"); 

    $("div").addClass("important");
});

jQuery $.ajax({name:value, name:value, ... }) 方法:

请求头

data 规定要发送到服务器的数据。

url 规定发送请求的 URL。默认是当前页面。

type 规定请求的类型(GET 或 POST)。

success(result,status,xhr) 当请求成功时运行的函数。

error(xhr,status,error) 如果请求失败要运行的函数。

 

2、mysqli

示例:

// 1、连接数据库
​
$link = @mysqli_connect('localhost','root','123456');
​
// 2、成功与否判断
​
if (!$link) {
​
exit('error('.mysqli_connect_errno().'):'.mysqli_connect_error());
​
//die
​
}
​
// 3、选择数据库
​
if (!mysqli_select_db($link,'test')) {
​
echo 'error('.mysqli_errno(link).'):'.mysqli_error(link);
​
mysqli_close($link);
​
die;
​
}
​
// 4、设置字符集
​
mysqli_set_charset($link,'utf8');
​
// 5、准备SQL语句
​
$sql = 'select * from star where id > 100';
​
// 6、执行SQL语句
​
result = mysqli_query(link,$sql);
​
if (result && mysqli_num_rows(result)) {
​
// 7、处理数据
​
/*mysqli_fetch_row:获取一条数据的索引数组
​
mysqli_fetch_assoc:获取一条数据的关联数组
​
mysqli_fetch_array:获取一条数据的指定数组,
​
类型取决于第二个参数
​
mysqli_fetch_all:获取结果集中的所有数据,
​
类型取决于第二个参数
​
第二个参数:MYSQLI_NUM(索引数组)
​
MYSQLI_ASSOC(关联数组)
​
MYSQLI_BOTH(索引和关联都有)*/
​
var_dump(mysqli_fetch_all($result,MYSQLI_ASSOC));
​
​
​
while (row = mysqli_fetch_array(result,MYSQLI_NUM)) {
​
var_dump($row);
​
}
​
} else {
​
}
​
// 8、释放资源、关闭连接
​
mysqli_free_result($result);
​
mysqli_close($link);
​
面向对象:
​
<?php
​
$mysql_conf = array(
​
    'host'    => '127.0.0.1:3306', 
​
    'db'      => 'test', 
​
    'db_user' => 'root', 
​
    'db_pwd'  => '123456', 
​
    );
​
mysqli = @new mysqli(mysql_conf['host'], mysql_conf['db_user'], mysql_conf['db_pwd']);
​
if ($mysqli->connect_errno) {
​
    die("无法连接数据库:\n" . $mysqli->connect_error);//诊断连接错误
​
}
​
$mysqli->query("set names 'utf8';");//编码转化
​
select_db = mysqli->select_db($mysql_conf['db']);
​
if (!$select_db) {
​
    die("could not connect to the db:\n" .  $mysqli->error);
​
}$sql = "select uid from user where name = 'joshua';";
​
res = mysqli->query($sql);
​
if (!$res) {
​
    die("sql error:\n" . $mysqli->error);
​
}
​
 while (row = res->fetch_assoc()) {
​
        var_dump($row);
​
    }
​
$res->free();
​
$mysqli->close();
​
?>
​

3、session

//第一步:开启Session并初始化
session_start();
​
//第二部:删除所有Session的变量,也可以用unset($_SESSION[XXX])逐个删除
$_SESSION = array();
​
//第三部:如果使用基于Cookie的session,使用setCookkie()删除包含Session ID的cookie
if(isset($_COOKIE[session_name()])) {
    setCookie(session_name(), "", time()-42000, "/");//设置cookie立刻失效
}
​
//第四部:最后彻底销毁session
session_destroy();

4、XMLHttpRequest

基本步骤:
​
1、创建XMLHttpRequest对象
var xhr = null;
if (window.XMLHttpRequest) {
    xhr = new window.XMLHttpRequest();
} else {
    xhr = new ActiveXObject(“Microsoft.XMLHTTP”);
}
2、建立连接
xhr.open(“get”,”ajax.php?name=xxx&email=yy”, true);
3、发送请求
[xhr.setRequestHeader(“Content-type”,”application/….”);]
xhr.send();
4、注册回调函数
xhr.onreadystatechange = function () {
if(xhr.readyState  ===  4) {
    if(xhr.status  ==  200) {
       …
    }
}
​
属性:
responseType:  text, json, document, blob, arraybuffer, moz-chuncked-arraybuffer
​
responseText, responseXML
​
readyState: 0~4
​
status: 200, 404, 500...
​
timeout, upload, withCredentials
​
方法:
​
open(), setRequestHeader(), send(),  getResponseHeader()
​
事件:
onreadystatechange, ontimeout,  onerror, onload,  onprogress
​
​
​

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

冒险岛_0_

您的打赏是我最大的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值