首页 > 编程技术 > php

ajax检测用户名

发布时间:2016-11-25 16:12


<div id="b">test</div>
<script>
function createAjax() {            //该函数将返回XMLHTTP对象实例
    var _xmlhttp;
    try {    
        _xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");    //IE的创建方式
    }
    catch (e) {
        try {
            _xmlhttp=new XMLHttpRequest();    //FF等浏览器的创建方式
        }
        catch (e) {
            _xmlhttp=false;        //如果创建失败,将返回false
        }
    }
    return _xmlhttp;    //返回xmlhttp对象实例
       
}
var exitdos =createAjax();
alert(exitdos)
exitdos.open("GET","www.111cn.net",true);
exitdos.onreadystatechange= function()
{
 if (exitdos.readyState == 1) {document.getElementById("b").innerHTML="check..."}
 if(exitdos.readyState==4)
 {
  
  //( == 200) &&
  alert(exitdos.status)
  alert(exitdos.responseText);
 }
}
exitdos.send(null);
</script>

我想用ADODB实现事务,让两条update语句要么都做要么都不做,但是却始终不成功。代码如下:

<?php
$db = NewADOConnection('mysql'); //创建一个ADODB连接对象
$mysql_conn = $db->Connect("localhost","root","", "anna");

$db->BeginTrans();
$ok = $db->Execute("update user set user_name= '098'where id=3");
if($ok)
$ok=$db->Execute("update user set user_name= where id=2");
if ($ok) {$db->CommitTrans();}
else {$db->RollbackTrans(); }
?>

结果却是第一条语句成功了,第二条没有成功。
但是同样我用MYSQL自带的函数却可以实现我要的功能,代码如下:

<?php
mysql_query("SET AUTOCOMMIT=0");
$ok1 = $db->Execute("update user set user_name= '098'where id=3");
$ok2=$db->Execute("update user set user_name= where id=2");
if ($ok1 && $ok2 ){ mysql_query("COMMIT");}
else  {mysql_query("ROLLBACK");}
?>


 今天来讲讲ajax实现静态文件登陆效果吧,首先我们就以站www.111cn.net登陆效果为例子吧:先看www.111cn.net的登陆入口效果:
这看上去和别的没什么区别,但我们仔细一看原来这是一个静态页面的入口,登陆成功的在这个静态页面显示的效果是,这张是登陆成功选择进入的栏目,
 
我们主要的是看这张的效果图,这是在index.html登陆成功的显示的效果,不过我要申明它不是用框架做的,而正是用ajax实现的,下面我们来看看它的html源码我们就会发出在文件最后有这样一段代码:
<script language="javascript">
<!--
 function return_member(str){  
 var url='';
 ajaxcreate();
 if(str==0){
   url="/member.php?action="+Math.random();
 }else{
  url="/user_login.php?pp="+Math.random();
 }
 xmlHttp.open("GET",url,true);  
 xmlHttp.send(null);
 if(str==0){
  xmlHttp.onreadystatechange=returnstate; 
 }else{
  xmlHttp.onreadystatechange=update_login; 
  }
 }
 
 function returnstate(){
  if(xmlHttp.readyState != 4 ){
   document.getElementById("ajax").innerHTML="正在加载数据,请稍后...";
  }
  if(xmlHttp.readyState == 4 ){
   document.getElementById("ajax").innerHTML=xmlHttp.responseText;
  } 
 }
 function update_login(){
  if(xmlHttp.readyState == 4 ){
  document.getElementById("pper").innerHTML=xmlHttp.responseText;  
  }
 }
 function loader(){
  return_member();  
 }
-->
</script>
这代码url="/user_login.php?pp="+Math.random();这个就是把数据发给user_login.php文件进行处理了,其实的php文件和我们普通的登陆方式没什么不同的.
 
注明:原创作品 转载请注明:www.111cn.net

function cnSubStr($string,$sublen

if(
$sublen>=strlen($string
)) 

return 
$string


$s=""

for(
$i=0;$i<$sublen;$i
++) 

if(
ord($string{$i})>127


$s.=$string{$i}.$string{++$i
}; 
continue; 
}else{ 
$s.=$string{$i
}; 
continue; 


return 
$s

}

 

<?PHP
$str="这个字^_^符好长呀,^_^";
$Short_Str=showShort($str,5);//截取前面4个汉字,结果为:这个字符...
Echo   "$Short_Str";
Function csubstr($str,$start,$len)
{
$strlen=strlen($str);
$clen=0;
for($i=0;$i<$strlen;$i++,$clen++)
{
if ($clen>=$start+$len)
break;
if(ord(substr($str,$i,1))>0xa0) //ord取首字符的ascii码
{
if ($clen>=$start)
$tmpstr.=substr($str,$i,2);
$i++;
}
else
{
if ($clen>=$start)
$tmpstr.=substr($str,$i,1);
}
}

return $tmpstr;
}
Function showShort($str,$len)
{
$tempstr = csubstr($str,0,$len);
if ($str<>$tempstr)
$tempstr .= "...";

return $tempstr;
}
?>

第三步就是php代码处理留言的信息合法性了,

<?php
require_once("inc/connect.php");
 $myname =get_value('myname',post);
 $mymail =get_value('mymail',post);
 $mytel =get_value('mytel',post);
 $mybook =get_value('mycontent',post);
 //exit($mymail);
 if(strlen($myname)>100 || strlen($myname)<1){alert('用户长度1-100','');}
 if(!@preg_match("/\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*/",$mymail) || strlen($mymail)<6 ){alert('请输入正确的邮箱地址以便我们与你联系!','');}
 if(!@preg_match("/\d{3}-\d{8}|\d{4}-\d{7}/",$mytel)){alert('请输入合法的电话如:0731-******','');}

 $sql ="select * from tbn where gx_object='$myname' and gx_mail='$mymail'";
 $result =mysql_query($sql); 
 if(mysql_num_rows($result)){
  mysql_free_result($result);
  alert('提示,你己提交留言,请不要重复提交!','');
 }
 $sql ="Insert into tbn(gx_content,gx_time,gx_tel,gx_mail,gx_object) value('$mybook','".date('y-m-d')."','$mytel','$mymail','$myname')";
 mysql_query($sql) or die(alert('你的留言中有非法数据!',''));
 alert('提示:留言成功',$_SERVER['HTTP_REFERER']);
  
 ?>

最四步就是显示留言了.

<?php
 include("../inc/connect.php"); 
  ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
<link href="style/admin.css" rel="stylesheet" type="text/css" />

<style type="text/css">
<!--
.STYLE1 {color: #000000}
.STYLE2 {color: #0000FF}
-->
</style>
<script>
<!--
function all_(str){


 var box_l = document.getElementsByName("box_x[]").length;


 for(var j = 0 ; j < box_l ; j++){


  document.getElementsByName("box_x[]")[j].checked = str;


 }


}
--></script>
</head>

<body>
<table width="95%" border="0" align="center" cellpadding="1" cellspacing="1" style="margin-top:20px; border:1px solid #9abcde;">
 <tr>
    <td height="25" colspan="3" background="skins/top_bg.gif"><table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
       <form id="form2" name="form2" method="post" action="?"> <tr>
          <td width="100%">你正在管理留言信息... </td>
          <td width="0%" align="right">
            <label></label><label></label></td>
        </tr></form>
      </table></td>
    </tr> <form id="form1" name="form1" method="post" action="menu_sava.php?action=allbook">
     <td width="4%"></tr>
 
    <?php
 
  $result =mysql_query("select * from tbn");
  $pagecount=1;
  $order=1;
  if(isset($_POST['key'])){
  $key=str_replace("'","*",$_POST['key']);
  }else if(isset($_GET['key'])){
  $key=str_replace("'","*",$_GET['key']);
  }else{
   $key='';
  }
  $total="select * from tbn";
  $sql="select * from tbn";
  if(!empty($key) && !is_null($key) && strlen($key)>2 && strlen($key)<50 ){
   $total.=" where gx_title like '%$key%' ";
 $sql.=" where gx_title like '%$key%' ";

  } 
  $result=mysql_query($total) or die('fail1'.mysql_error());
  $rs=mysql_fetch_array($result);
  $rdcount=mysql_num_rows($result);
  if($rdcount){
  $pagesize=15;
  $pagecount=($rdcount % $pagesize)?(int)($rdcount / $pagesize)+1:$rdcount/$pagesize;//统计总页面
  $page=isset($_GET['page'])?$_GET['page']:1;//取得当前页面
  $start=($page>=1 && $page<=$pagecount)?$start=$pagesize*($page-1):$start=1;//取得超始记录
  $order=isset($_GET['order'])?$_GET['order']:4;
   $sql.=" order by id desc limit $start,$pagesize";
   $resulte=mysql_query($sql) or die('fail'.mysql_error());
 while ($rs =mysql_fetch_array($resulte) ){
?>  <tr>
      <td height="25" colspan="3" align="left" valign="middle" background="images/main_bg.gif" class="td_heng" style="padding-right:5px;">
      &nbsp;
      <input type="checkbox" name="box_x[]" id="box_x[]" value="<?php echo $rs[0];?>" />
     
      标题:<?php echo $rs['gx_title']?>
      作者:<?php echo $rs['gx_object']?>
      电话:<?php echo $rs['gx_tel']?>
      时间:<?php echo $rs['gx_time']?>
      邮箱:<?php echo $rs['gx_mail']?></td>
  
    <tr onMouseOver="this.style.background='#d7ebff'" onMouseOut="this.style.background='#ffffff'">
      <td height="27" colspan="2" align="left" valign="middle" class="td_heng" style="padding:15px;">
   &nbsp;<?php echo $rs['gx_content']?>      </td>
      <td width="7%" align="center" valign="bottom" class="td_heng"><a href="menu_sava.php?action=delguest&id=<?php echo $rs[0];?>" onclick="javascript:return confirm('确认删除?删除后无法恢复','','');">删除</a></td>
    </tr>
    <tr>
     <td height="32" colspan="3">&nbsp;</td>
   </tr>
   <?php
   }
   }
   ?>
  
   <tr>
    <td height="32" colspan="3" background="skins/top_bg.gif"><table width="98%" border="0" align="center" cellpadding="0" cellspacing="0">
        <tr>
          <td width="34%"><input type="button" onclick="javascript:all_(true);" name="Submit" value="全选" />
            &nbsp;
            <input type="button"  onclick="all_(false);" name="Submit" value="反选" />
            &nbsp;
            <input type="submit" onclick="javascript:return confirm('确认提醒:删除后无法还原!','','');" value='删除所选项' /></td>
          <td width="66%" align="right" style="word-spacing:5px;">
    <?php
    $url ="?key=".rawurlencode($key)."&orderby=$order&page=";
    pagelist(@$page,$pagecount,$rdcount,$url,@$pagesize);
    ?></td>
        </tr>
      </table></td>
  </tr> </form>
</table>
</body>
</html>

 

注:原创文章转载请注明:www.111cn.net

 

标签:[!--infotagslink--]

您可能感兴趣的文章: