谁能带我看看  验证码刷新 为什么只刷一次。。 也就是说第一次点击有效,再点无效
 <img src="admin/valcode.php?num=<?php echo $num; ?>" onclick="this.src='admin/valcode.php?num=<?php 
      for($i=0;$i<4;$i++){
        $num .= dechex(rand(0,15));
         echo $num;
} ?>'"  alt="刷新验证码" />

解决方案 »

  1.   

    无效是啥?
    不过最好后面加个随机数,要不然会有缓存.
    或者修改valcode.php,在头上加. header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
            header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");
            header("Cache-Control: no-store, no-cache, must-revalidate");
            header("Cache-Control: post-check=0, pre-check=0", false);
            header("Pragma: no-cache");
      

  2.   

    哪位帮忙顶下。 。。 ajax能实现。但我这不是用它的
      

  3.   

    就算用ajax也要解决缓存问题吧,试试1楼的方法吧。
      

  4.   

    你的echo放在for循环里怎么可能得到你想要的??应该把echo放在for循环后面.
      

  5.   

    ie有缓存,在url后面加一个时间函数就行了
      

  6.   

    有理。最好是再加上随机数,比如:onclick="this.src='admin/valcode.php?ra=<?php 随机数;?>&num=<?php 
      

  7.   

    居然用PHP生成随机数,php由服务器解释,自然永远只是一个数,不会刷新,要用js动态生成<img src="admin/valcode.php?num=<?php echo $num; ?>" onclick="this.src='admin/valcode.php?num=' + Math.random()*10000000%10000">