一般post过来的数据下标都不是0-9。看你form里面的name,比如$_POST['name']

解决方案 »

  1.   

    这个是分情况的:1、如果你的URL是类似于这种情况的话:index.php?id=1&name=aa&...
       则接收参数时就要指定相应下标,即$_POST['id']...2、如果你的URL是类似于这种情况的话:index.php?1,aa,...
       则接收参数时就不需要要指定相应下标,也就是楼主所提到的那种方法
      

  2.   


    foreach($_POST as $key=>$value)
    {
      $value=trim($value);
      $value=htmlspecialchars($value);
      $value=addslashes($value);
      $_POST[$key] = $value;
      if(!isset($arr[$i])){
       echo "<script>alert(\"请认真填写注册信息\");location=\"reguserfrom.php\";</script>'";
     }
    }
      

  3.   

    上面人都说了,我不重复了,再帮你纠正一个小问题。for($i=0;$i<count($arr);$i++)你应该把它分为两步:$max = count($arr);
    for($i=0;$i<$max;$i++)否则,如果像你这样写:
    for($i=0;$i<count($arr);$i++)
    每次循环都会重复无意义的去计算count($arr),这个值是固定的,所以应该事先计算好放在一个变量里。