学习笔记之php页面ajax登录异步刷新
2014-09-13 16:13
519 查看
在做登陆等验证过程中,一直想实现一种用户无感知的效果,看了大神们的解决方法后终于实现了。主要用到了一些ajax知识,还有iframe。
首先,用一段js将登录框用户输入的的值传递到另一个页面(就是真正处理验证的页面)
js代码如下:
<!--ajax判断注册用户是否存在-->
<script type="text/javascript">
$(document).ready(function(){
$(".displayName input:first").blur(function(){
$.ajax({
type:"post",
url:"registerNAME.php",
data:"username=" + $(".displayName input:first").val(),
success:function(msg){
$("#userinfo").html(msg);
}
});
});
});
</script>
说明:1、“.displayName input:first” 是指类选择器为displayName中的第一个input
2、“registerNAME.php” 是用来处理验证的页面
3、“username” 是传递过去的变量名
4、 #userinfo" 是显示提示信息的选择器的ID,用来显示处理验证页面输出的提示信息。
注册处理页面registerNAME.php代码如下:(本页代码只是对用户名进行了验证)
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<?php
@$username = htmlspecialchars( trim($_POST['username']) );
@$username=mb_convert_encoding(@$username,"gbk","utf-8");
if (!empty(@$username))
{
$coon=odbc_connect("Manager","sa","xxxxx");
@$sql="SELECT TOP 1 Name FROM [2_VIPMember] WHERE Name = '".@$username."' ";
//echo $sql;
@$result =@odbc_exec($coon,@$sql);
//var_dump($result);
while(@odbc_fetch_row(@$result))
{
@$row=odbc_result(@$result,"Name");
}
if (empty(@$row[0]))
{
echo "<font color=green style='font-size:16px;'><b>*恭喜,可以注册!</b></font>";
}
else
{
echo "<font color=red style='font-size:16px;'><b>*用户名已被注册!</b></font>";
}
}
else
{
echo "<font color=#ff0000 style='font-size:16px;'><b>*请输入用户名</b></font>";
}
?>
另外,页面用多个iframe实现异步刷新效果的时候,当iframe被隐藏时,会出现提示信息不能显示在用户登陆界面的情况,解决方法是:
<?php echo"<script>parent.document.getElementById('userinfo').innerHTML='恭喜您!注册成功!';</script>";?>
首先,用一段js将登录框用户输入的的值传递到另一个页面(就是真正处理验证的页面)
js代码如下:
<!--ajax判断注册用户是否存在-->
<script type="text/javascript">
$(document).ready(function(){
$(".displayName input:first").blur(function(){
$.ajax({
type:"post",
url:"registerNAME.php",
data:"username=" + $(".displayName input:first").val(),
success:function(msg){
$("#userinfo").html(msg);
}
});
});
});
</script>
说明:1、“.displayName input:first” 是指类选择器为displayName中的第一个input
2、“registerNAME.php” 是用来处理验证的页面
3、“username” 是传递过去的变量名
4、 #userinfo" 是显示提示信息的选择器的ID,用来显示处理验证页面输出的提示信息。
注册处理页面registerNAME.php代码如下:(本页代码只是对用户名进行了验证)
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<?php
@$username = htmlspecialchars( trim($_POST['username']) );
@$username=mb_convert_encoding(@$username,"gbk","utf-8");
if (!empty(@$username))
{
$coon=odbc_connect("Manager","sa","xxxxx");
@$sql="SELECT TOP 1 Name FROM [2_VIPMember] WHERE Name = '".@$username."' ";
//echo $sql;
@$result =@odbc_exec($coon,@$sql);
//var_dump($result);
while(@odbc_fetch_row(@$result))
{
@$row=odbc_result(@$result,"Name");
}
if (empty(@$row[0]))
{
echo "<font color=green style='font-size:16px;'><b>*恭喜,可以注册!</b></font>";
}
else
{
echo "<font color=red style='font-size:16px;'><b>*用户名已被注册!</b></font>";
}
}
else
{
echo "<font color=#ff0000 style='font-size:16px;'><b>*请输入用户名</b></font>";
}
?>
另外,页面用多个iframe实现异步刷新效果的时候,当iframe被隐藏时,会出现提示信息不能显示在用户登陆界面的情况,解决方法是:
<?php echo"<script>parent.document.getElementById('userinfo').innerHTML='恭喜您!注册成功!';</script>";?>
相关文章推荐
- php学习笔记(十六)登录页面实例-输入检查和粘性表单
- PHP学习笔记 登录页面
- php+jQuery+Ajax简单实现页面异步刷新
- php学习笔记(三十二)ajax结合pageView类实现页面无刷新请求
- PHP学习笔记(15)PDO数据库操作+AJAX无刷新技术删除用户
- php+JQuery+Ajax简单实现页面异步刷新 (转)
- php学习笔记-1.登录页面的学习
- PHP学习笔记(16)AJAX无刷新技术--深入理解
- php+JQuery+Ajax简单实现页面异步刷新
- php+jQuery+Ajax简单实现页面异步刷新
- PHP学习笔记 用超链接实现在本页面显示不同信息
- Asp.net中的AJAX学习记录之二 体会AJAX页面刷新的不同(初体验)
- 黑马程序员之 ASP.NET学习笔记:jquery+ajax无刷新分页代码
- jquery学习笔记 用jquery实现无刷新登录
- PHP + AJAX 实现无刷新分页 不刷新页面实现分页 PHP AJAX
- 利用JQuery+Ajax实现aspx页面无刷新异步请求
- Ajax基础教程学习(3)_创建自动刷新页面
- 刷新页面的学习笔记
- Asp.Net Ajax 学习笔记13 Microsoft AJAX Library中异步通信层(摘自网络)
- php+ajax+json实现静态刷新页面