请教:PHP js 实现复杂的按钮功能 利用ajax请求php,由php来检查姓名是否存在。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 例子。ajax网上的例子很多,随便google哈一大堆,原理就是 input框失去焦点后ajax提交,然后php处理返回json之类的,然后js在操作显示提示 我最近也在研究,分享下:文件1、(conn.php) 代码如下:<?php$conn = mysql_connect('localhost','数据库用户名','数据库密码');mysql_select_db('数据库名',$conn);?>文件2、(a.html)代码如下:<form action="b.php" method="post" ><table> <tr> <td>用户名:</td> <td><input type="text" name="name" onblur="check(this.value)"></td> <td id="name"> </td> </tr> <tr> <td colspan="3"><input type="submit" value="提交" name="sub"></td> </tr></table></form><script>var xmlHttpfunction check(str){ xmlHttp=GetXmlHttpObject()if (xmlHttp==null) { alert ("Browser does not support HTTP Request") return } var url="a.php"url=url+"?n="+strurl=url+"&sid="+Math.random()xmlHttp.onreadystatechange=stateChanged xmlHttp.open("GET",url,true)xmlHttp.send(null)} function stateChanged() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete") { document.getElementById("name").innerHTML=xmlHttp.responseText } }function GetXmlHttpObject(){var xmlHttp=null;try { // Firefox, Opera 8.0+, Safari xmlHttp=new XMLHttpRequest(); }catch (e) { // Internet Explorer try { xmlHttp=new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp=new ActiveXObject("Microsoft.XMLHTTP"); } }return xmlHttp;}</script>文件3、(a.php) 代码如下:<?phpinclude "conn.php";$sql = 'select * from user';//user为你的数据库名,自己修改$res = mysql_query($sql);while($row=mysql_fetch_assoc($res)){ $u_name[]= $row['name'];//$row['name']里面的name为你数据库字段名 }$name = $_GET['n'];if(in_array($name,$u_name)){ echo "此用户名已被注册请输入新的用户名!</font>";}else{ echo "可以使用";}?>文件4、(b.php)代码如下:<?phpinclude "conn.php";if(isset($_POST['sub'])){ $sql = "insert into user(name) value ($_POST['name'])"; $result = mysql_query($sql); if($result){ echo "成功!"; }}?> 不知道楼主用过jquery没有,如果用过或者想用的话我可以给详细方案。function check(){var name=$("#name").val();$.post("checkUser.php",{name:name},function(result){ if(result==1){ alert('已经存在用户名'); return false; }});}checkUser.php$sql="select * from user where name=".$_POST['name'];$resut=mysql_query($sql);if($result){ echo 1;exit;} 得用jquery post和php很好解决这个,现在很多注册页面都是这样做! 感谢LS各位大虾的帮助,问题解决了。我用的是Ajax。 【讨论】大家说说php+mysql使用存储过程的优缺点 怎么打印php文件中所有的变量和常量? PHP结合JS的日期联动问题 页面间如何传递信息? 請問有沒有函數能把文件轉換成bin存入數據庫 ~~~~~~~~~~~~~~~~~~~如何把字符串中用空格分开的没字或单词放入数组中 如何更改一个表的列的顺序 请教如何使显示的数据每行限制显示数目 请问,有办法实现把本地文件用PHP打包成ZIP格式吗? FastTemplate模板问题,帮忙啊! 正则表达式难题 在哪运行PHP代码?
原理就是 input框失去焦点后ajax提交,然后php处理返回json之类的,然后js在操作显示提示
文件1、(conn.php) 代码如下:
<?php
$conn = mysql_connect('localhost','数据库用户名','数据库密码');
mysql_select_db('数据库名',$conn);
?>文件2、(a.html)代码如下:
<form action="b.php" method="post" >
<table>
<tr>
<td>用户名:</td>
<td><input type="text" name="name" onblur="check(this.value)"></td>
<td id="name"> </td>
</tr>
<tr>
<td colspan="3"><input type="submit" value="提交" name="sub"></td>
</tr>
</table>
</form>
<script>
var xmlHttpfunction check(str){
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="a.php"
url=url+"?n="+str
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
} function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("name").innerHTML=xmlHttp.responseText
}
}
function GetXmlHttpObject()
{
var xmlHttp=null;try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
// Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}
</script>文件3、(a.php) 代码如下:<?php
include "conn.php";
$sql = 'select * from user';//user为你的数据库名,自己修改
$res = mysql_query($sql);
while($row=mysql_fetch_assoc($res)){
$u_name[]= $row['name'];//$row['name']里面的name为你数据库字段名
}
$name = $_GET['n'];
if(in_array($name,$u_name)){
echo "此用户名已被注册请输入新的用户名!</font>";
}else{
echo "可以使用";
}
?>文件4、(b.php)代码如下:
<?php
include "conn.php";
if(isset($_POST['sub'])){
$sql = "insert into user(name) value ($_POST['name'])";
$result = mysql_query($sql);
if($result){
echo "成功!";
}
}
?>
var name=$("#name").val();
$.post("checkUser.php",{name:name},function(result){
if(result==1){
alert('已经存在用户名');
return false;
}
});
}checkUser.php
$sql="select * from user where name=".$_POST['name'];
$resut=mysql_query($sql);
if($result){
echo 1;exit;
}