你有什么错误提示呢?
把 ss.php: 中的代码修改一下echo "<center>";
echo " <form name='gry' method='post' action='sql.php'>";
echo "<type=hidden name='id' value='$name'>";echo "账号 :<input type='text' name='a' value='$ss[1]'><br>";  
echo "密码 :<input type='password' name='b' value='$ss[2]'><br>";
echo "重复密码 :<input type='password' name='c' value='$ss[2]'><br>";
echo "Email:<input type='text' name='d' value='$ss[4]'><br>"; 
echo "请选择性别:
           <input type='radio' name='e' value='$ss[3]' checked>男
            <input type='radio' name='e' value='$ss[3]'>女 <br>";
echo "<input type='submit' name='sub' value='确 认 修 改'>"; 
echo "</form>";echo "</center>";
        

解决方案 »

  1.   

    循环里,这样执行有好多同样名字的form以及form内部的表单元素,这样是不行的.肯定出错.....
    while($ss=mysql_fetch_array($result)){echo "<center>";
            echo "<type=hidden name='id' value='$name'>";        echo " <form name='gry' method='post' action='sql.php'>";
            echo "账号 :<input type='text' name='a' value='$ss[1]'><br>";  
            echo "密码 :<input type='password' name='b' value='$ss[2]'><br>";
            echo "重复密码 :<input type='password' name='c' value='$ss[2]'><br>";
            echo "Email:<input type='text' name='d' value='$ss[4]'><br>"; 
            echo "请选择性别:
                    <input type='radio' name='e' value='$ss[3]' checked>男
                    <input type='radio' name='e' value='$ss[3]'>女 <br>";
            echo "<input type='submit' name='sub' value='确 认 修 改'>"; 
        
        
            echo "</center>";
            echo "</form>";
            
    }
    ....
      

  2.   

    没有错误提示..
    就是MySQL里的数据修改不成功。
    ss.php你修改了什么??
      

  3.   


    ....
    $i=0;
    while($ss=mysql_fetch_array($result)){echo "<center>";
            echo "<type=hidden name='id' value='$name'>";        echo " <form name='gry{$i}' method='post' action='sql.php'>";
            echo "账号 :<input type='text' name='a' value='$ss[1]'><br>";  
            echo "密码 :<input type='password' name='b' value='$ss[2]'><br>";
            echo "重复密码 :<input type='password' name='c' value='$ss[2]'><br>";
            echo "Email:<input type='text' name='d' value='$ss[4]'><br>"; 
            echo "请选择性别:
                    <input type='radio' name='e' value='$ss[3]' checked>男
                    <input type='radio' name='e' value='$ss[3]'>女 <br>";
            echo "<input type='submit' name='sub' value='确 认 修 改'>"; 
        
        
            echo "</center>";
            echo "</form>";
    $i++;
            
    }
    ....可以这样
      

  4.   

    你仔细对照ss.php中你的代码和我的代码呀没有发现任何改变吗?仔细看一下,呵呵
      

  5.   

    楼主有什么问题,我把代码改成:ss.php:
    <?php
    $name=$_POST['names'];
    $link=mysql_connect("localhost","root","123");
    $db=mysql_select_db("library");
    mysql_query("set names gb2312");
    $sql="select * from  user  where NAME='$name'";
    $result = mysql_query($sql,$link);
    while($ss=mysql_fetch_array($result)){
    echo "<center>";
            echo "<type=hidden name='id' value='{$name}'>";
            echo " <form name='gry' method='post' action='sql.php'>";
            echo "账号 :<input type='text' name='a' value='{$ss[1]}'><br>";  
            echo "密码 :<input type='password' name='b' value='{$ss[2]}'><br>";
            echo "重复密码 :<input type='password' name='c' value='{$ss[2]}'><br>";
            echo "Email:<input type='text' name='d' value='{$ss[4]}'><br>"; 
            echo "请选择性别:
                    <input type='radio' name='e' value='{$ss[3]}' checked>男
                    <input type='radio' name='e' value='{$ss[3]}'>女 <br>";
            echo "<input type='submit' name='sub' value='确 认 修 改'>"; 
            echo "</center>";
            echo "</form>";
            
    }
    ?>sql.php:
    <?php
    $name=$_POST['names'];
    $a1=$_POST['a'];
    $b1=$_POST['b'];
    $c1=$_POST['c'];
    $d1=$_POST['d'];
    $e1=$_POST['e'];
    $link=mysql_connect("localhost","root","123");
    $db=mysql_select_db("library");
    mysql_query("set names gb2312");
    $sql="update user set Password='".$b1."', Email='".$d1."', Sex='".$e1."' where ID='".$name."'";
    $result=mysql_query($sql,$link) or die(mysql_error());
        if($result){
        echo "<script>alert('信息修改成功!');this.close();</script>";
        }
        else
        {
         echo "<script>alert('信息修改失败...');history.go(-1);</script>";             
        }
    mysql_close($link);
    ?>语法的问题,特别是变量在引号内处理的问题,我把代码改为以上两个片断,你运行一下,看看行不行???按照你那个肯定不行的。
      

  6.   

    先检查一下数据表的各个字段属性是否满足要求?例如 int 的字段不能给字符值
      

  7.   

    一般调试都可以在执行sql前 echo $sql, 然后代入phpmyadmin的SQL框运行测试一下,phpmyadmin会抛出错误位置的。
      

  8.   

    //错误
    ini_set("display_errors", "On");
    error_reporting(7);//magic_quotes_gpc = On
    $ini_magic_quotes_gpc = get_magic_quotes_gpc();
    if(!$ini_magic_quotes_gpc){
        add_magic_quotes_gpc($_POST);
        add_magic_quotes_gpc($_GET);
    }function add_magic_quotes_gpc(&$var) {
    if(is_array($var)){
    foreach($var as $k => $v){
    if(is_array($v)){
    add_magic_quotes_gpc($var[$k]);
    }else{
    $var[$k] = addslashes($v);
    }
    }
    }else{
    $var = addslashes($var);
    }
    }
    页面最前最好加这些