我不怎么会JQuery啊。。不知道怎么PHP里面怎么实现无刷新和应用AJAX。希望各位大虾解答下。。

解决方案 »

  1.   

    哦,这个你可以先看看它是如何获取值,对值进行验证,验证后 再用ajax的方法输出就行了。最好先到网上看看人家写的。
      

  2.   

    给你个例子
    http://www.skygq.com/2011/03/17/skygq%E8%A1%A8%E5%8D%95%E9%AA%8C%E8%AF%81ajax%E6%97%A0%E5%88%B7%E6%96%B0%E8%A1%A8%E5%8D%95%E6%8F%90%E4%BA%A4%E5%90%88%E4%BD%93%E7%89%88%E5%8D%87%E7%BA%A7%E4%B8%BA1-5/
      

  3.   

    用一个页面实现验证码图片
    在需要验证码的地方用<img>嵌入验证码页面,然后点击刷新验证码页面即可。
    验证码页面代码
    <?php
    //输出一个gif的图片
    Header("Content-type: image/gif");
    /*
    * 初始化
    */          
    //是否要边框 1要:0不要  
    $border = 1;  
    //验证码位数
    $how = 4;          
    //图片宽度
    $w = $how*15+3;  
    //图片高度
    $h = 22;       
    //字体大小
    $fontsize = 5;                               
    //验证码内容1
    $alpha = "abcdefghijkmnpqrstujklmnstuvwxyz"; 
    //验证码内容2
    $number = "vwxyzabcdefgh2345pqr6789";  
    //验证码字符串初始化
    $randcode2 = "";                     
    //初始化随机数种子
    srand((double)microtime()*1000000); 
    //创建验证图片
    $im = ImageCreate($w, $h); /*
    * 绘制基本框架
    */
    //设置背景颜色
    $bgcolor = ImageColorAllocate($im, 255, 255, 255); 
    //填充背景色 
    ImageFill($im, 0, 0, $bgcolor); 
    if($border)
    {                                                    
        //设置边框颜色
        $black = ImageColorAllocate($im, 0, 0, 0);         
        //绘制边框
        ImageRectangle($im, 0, 0, $w-1, $h-1, $black);
    }/*
    * 逐位产生随机字符
    */
    for($i=0; $i<$how; $i++)
    {                                         
        //字母还是数字
        $alpha_or_number = mt_rand(0, 1); 
        $str = $alpha_or_number ? $alpha : $number;  
        //取哪个字符
        $which = mt_rand(0, strlen($str)-1); 
        //取字符
        $code = substr($str, $which, 1);  
        //绘字符位置
        $j = !$i ? 4 : $j+15;                                                                
        //字符随即颜色
        $color3 = ImageColorAllocate($im, mt_rand(0,100), mt_rand(0,100), mt_rand(0,100)); 
        ImageChar($im, $fontsize, $j, 3, $code, $color3); //绘字符
        $randcode2 .= $code; //逐位加入验证码字符串
    }
    /*
    * 添加干扰
    */
    for($i=0; $i<5; $i++)//绘背景干扰线
    {   
        $color1 = ImageColorAllocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255)); //干扰线颜色
        ImageArc($im, mt_rand(-5,$w), mt_rand(-5,$h), mt_rand(20,300), mt_rand(20,200), 55, 44, $color1); //干扰线
    }   
    for($i=0; $i<$how*30; $i++)//绘背景干扰点
    {   
        $color2 = ImageColorAllocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255)); //干扰点颜色 
        ImageSetPixel($im, mt_rand(0,$w), mt_rand(0,$h), $color2); //干扰点
    }//把验证码字符串写入session
    session_start();
    $_SESSION['randcode'] = $randcode2;
    /*绘图结束*/
    imagegif($im);
    imagedestroy($im);
    /*绘图结束*/
    ?>嵌入验证码及刷新验证码代码
    <input type="text"  name="checkcode" />&nbsp;
    <img src="<?php echo $baseUrl;?>/login/checkcode/" onclick="this.src='<?php echo $this->baseUrl();?>/login/checkcode/id/'+Math.random()*5;"  style="cursor:pointer" alt="验证码,看不清楚?请点击刷新验证码!"   />
      

  4.   

    给你个例子。我刚刚学会了点点。呵呵。检测用户名是否可用的。
    1.显示窗口
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
    <script language="javascript">
    var str =encodeURI(str); 
    function showHint(str)
    {
    var xmlhttp;
    if (str.length==0)
      { 
      document.getElementById("txtHint").innerHTML="<font size=2 color=red>用户名不能为空!</font>";
      return false;
      }
    if (window.XMLHttpRequest)
      {// code for IE7+, Firefox, Chrome, Opera, Safari
      xmlhttp=new XMLHttpRequest();
      }
    else
      {// code for IE6, IE5
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("txtHint").innerHTML=xmlhttp.responseText;
        }
      }
    xmlhttp.open("GET","check.php?q="+str,true);
    xmlhttp.send();
    }
    </script>
    </HEAD><BODY>
    用 户 名: *<input type=text name=name1 onblur="showHint(this.value)"><span id="txtHint"></span>
    </BODY>
    </HTML>2.ajax后台操作页面check.php。
    <?php
    header("content-type:text/html; charset=gb2312");
    $q=$_GET["q"];
    $con = mysql_connect("localhost","root","");
    if (!$con)
     {
     die('Could not connect: ' . mysql_error());
     }mysql_select_db("clint", $con);
      $sql=mysql_query("select * from clint where name='$q'");
    $num=mysql_num_rows($sql);
    if ($num==0)
      {
      echo "<font size=2 color=green>可以使用!</font>";
      }
      else
      {
      echo "<font size=2 color=red>用户名已存在!</font>";
      }
      mysql_close($con);
      function gbkToUtf8 ($value) {
    return iconv("gb2312", "UTF-8", $value);
    }
    ?>