php和javascript交互篇(一)
看了二班学霸的作业之后突然感觉这个学期的作业有着落了,现在就跟大家聊聊JavaScript与php交互;(感觉要是我每周都写这个是不是不好啊?)
Get和POST
大家可能会说了这有什么好说的一个破表单就解决了,要是这么简单的话我也就不好意思拿来交作业了
使用jQuery的get()和post()方法
使用get和post方法的好处就是能从服务器请求数据而不是跳转到一个页面,你可以自如的从服务器上获取和提交数据,你想想你注册时填了一大堆信息后按下提交按钮之后,服务器告诉你注册失败你又得从新填。那网站基本上药丸了
1 $("#loginbutton").click(function () { 2 login() 3 }) 4 function login() { 5 var username = $("#username").val() 6 var password = $("#password").val() 7 $.post("loginsuccess.php", { username: username, password: password } ,function (data) { 8 if(data==true){ 9 location.href = "user.php" 10 }else{ 11 alert("error "+data) 12 } 13 }) 14 }
从上述代码分析post方法
$.post(URL,data,callback);
必需的-- URL 参数规定您希望请求的 URL。
可选的-- data 参数规定连同请求发送的数据。
可选的-- callback 参数是请求成功后所执行的函数名。
上述代码成功的向 loginsuccess.php 发送了{ username: username, password: password }数据
在成功后回调函数function(data)值得注意的是data就是服务器返回给你的数据
上述代码中只要服务器返回true页面就跳转,否则就报error
服务器php脚本loginsuccess.php
如下:
1 <?php 2 session_start(); 3 $username = $_POST['username']; 4 $_SESSION['user'] = $username; 5 if ($username == "feng") 6 echo true; 7 else 8 echo false; 9 ?>
上述代码从_post数组中取得username如果为“feng”就返回真
输入1结果:
输入feng结果:成功跳转到user.php
get的使用方法更为简单
语法:
$.get(URL,callback);
必需的 URL 参数规定您希望请求的 URL。
可选的 callback 参数是请求成功后所执行的函数名。
方法类似post就不再赘述
想知道为甚么user.php可以得到值username请关注下节ajax与session