判断是否修改成功,要检查 mysql_affected_rows 的返回值
mysql_query 对于非 select 指令,返回逻辑值:指令正确 true,指令错误 false
你 if($sql!=="") 总归是判断不出来的

解决方案 »

  1.   

    将你的$sql语句echo出来。看一下语句显示出来的有木有问题,如果觉得木有问题再复制过来然后到sql里面去执行一下。
      

  2.   


    这位大哥 怎么echo  出来 小弟是是个新手
      

  3.   


    就是在那条sql语句后面加上
    echo $sql;exit();
    在页面上显示这条sql语句,看有没有问题,然后再拿着这条sql语句在数据库中运行一下,看有错误没
      

  4.   

    if(mysql_affected_rows()>0)
    {
    echo"<script>alert('修改成功');window.location.href='contact.php';</script>";
    }
    else
    {
    echo"<script>alert('修改失败');window.location.href='co_up.php';</script>";
    }还有你的sql指令有问题吧,每个等式用逗号隔开。
      

  5.   

    if($_POST[submit]!==""){
    ==》改为
      if(isset($_POST['submit'])){ 比较好。
      

  6.   

    $sql=mysql_query("update tbl_contact set coID='$coID',coName='$coName',coSex='$coSex',coAge='$coAge'coCell1='$coCell1'coCell2='$coCell2',coTel1='$coTel1',coTel2='$coTel2',coFax='$coFax',coQQ='$coQQ',coMSN='$coMSN',coAddr='$coAddr',coOrder='$coOrder' where ID=$ID"); =>
    $sql=mysql_query("update tbl_contact set coID='$coID',coName='$coName',coSex='$coSex',coAge='$coAge',coCell1='$coCell1',coCell2='$coCell2',coTel1='$coTel1',coTel2='$coTel2',coFax='$coFax',coQQ='$coQQ',coMSN='$coMSN',coAddr='$coAddr',coOrder='$coOrder' where ID=$ID");
      

  7.   

    这位大哥 不用逗号 隔开那用什么 隔开   mysql_affected_rows() 这括号里要穿什么 参数吗?
      

  8.   

    exit("update tbl_contact set coID='$coID',coName='$coName',coSex='$coSex',coAge='$coAge',coCell1='$coCell1',coCell2='$coCell2',coTel1='$coTel1',coTel2='$coTel2',coFax='$coFax',coQQ='$coQQ',coMSN='$coMSN',coAddr='$coAddr',coOrder='$coOrder' where ID=$ID"); //放到mysql_query之前,页面上看输出的对不?
      

  9.   

    if($_POST[submit]!==""){
    include"conn.php";
    $ID=$_GET['ID'];//这里为什么是$_GET?,不是post么?
    $coID=$_POST['coID'];
    $coName=$_POST['coName'];
    $coSuID=$_POST['coSuID'];你的id没有取到,当然在sql语句中where id=$id这里不能修改指定的数据了。
      

  10.   

    把你传值的id,name什么的在处理页面,echo一下,先看一下是不是传值失败了,是那些失败了。
      

  11.   

    仔细看看你的 sql,与我的sql,你是不是手误呀???
    exit("update tbl_contact set coID='$coID',coName='$coName',coSex='$coSex',coAge='$coAge',coCell1='$coCell1',coCell2='$coCell2',coTel1='$coTel1',coTel2='$coTel2',coFax='$coFax',coQQ='$coQQ',coMSN='$coMSN',coAddr='$coAddr',coOrder='$coOrder' where ID=$ID"); 你的语句中 coAge='$coAge'coCell1='$coCell1'coCell2='$coCell2',怎么能运行呢????
      

  12.   

    mysql_query("update tbl_contact set coID='$coID',coName='$coName',coSex='$coSex',coAge='$coAge'coCell1='$coCell1'coCell2='$coCell2',coTel1='$coTel1',coTel2='$coTel2',coFax='$coFax',coQQ='$coQQ',coMSN='$coMSN',coAddr='$coAddr',coOrder='$coOrder' where ID=$ID");if(mysql_affected_rows() > 0)
    {
    ...//如果你的sql语句没问题的话,这样就行
      

  13.   

    你的处理代码里边,$ID=$_GET['ID'];在你的页面里边不是通过post传递的么?把$ID=$_GET['ID'];改为$ID=$_POST['ID'];试试吧,看着sql语句也没什么错误。
      

  14.   

    怎么 echo 啊 小弟是新手 
      

  15.   

    好吧。看到这堆东西了吧。
    $ID=$_GET['ID'];
    $coID=$_POST['coID'];
    $coName=$_POST['coName'];
    $coSuID=$_POST['coSuID'];
    $coAge=$_POST['coAge'];
    $coCell1=$_POST['coCell1'];
    $coCell2=$_POST['coCell2'];
    $coTel1=$_POST['coTel1'];
    $gs=$_POST['coTel2'];
    $coFax=$_POST['coFax'];
    $coQQ=$_POST['coQQ'];
    $coMSN=$_POST['coMSN'];
    $coAddr=$_POST['coAddr'];
    $coOrder=$_POST['coOrder'];
    然后在后面,挨着。
    echo $ID;
    echo $coID;
    ......
    然后看他是不是空值或者是乱七八糟的字符。
    如果你值都没有传过来,肯定会错。
      

  16.   

    你要学会一步一步定位错误。。
    这样,你先把处理页面代码里边的数据die或者print_r出来。首先检查是不是值没有取到。如果值都取到了且正确,接下来检查是不是sql语句的错误。die("sql=".$sql);
    把页面的sql语句放到数据库中执行。如果错误的话,肯定是sql语句的错误。如果也正确的话,那接下来可能就是你的处理逻辑的错误了。
    比如说if($sql!=="")这样的处理就是一个错误的逻辑,sql语句正确不代表执行结果正确。你要用if(mysql_num_rows($res)) 或者mysql_affected_rows()判断影响行数。祝lz好运。
      

  17.   

    这样调试啊
    把这句话if($sql!=="")
    {
    echo"<script>alert('修改成功');window.location.href='contact.php';</script>";
    }
    else
    {
    echo"<script>alert('修改失败');window.location.href='co_up.php';</script>";
    }
    改成
    if($sql)
    {
    echo"<script>alert('修改成功');window.location.href='contact.php';</script>";
    }
    else
    {
    die("update tbl_contact set coID='$coID',coName='$coName',coSex='$coSex',coAge='$coAge'coCell1='$coCell1'coCell2='$coCell2',coTel1='$coTel1',coTel2='$coTel2',coFax='$coFax',coQQ='$coQQ',coMSN='$coMSN',coAddr='$coAddr',coOrder='$coOrder' where ID='$ID'");
    }
    这样如果没有插入进去就会显示你的SQL语句,你看看各个值是否传递过来了,然后将语句复制一下放到SQL数据库中看看能否执行成功,如果不能执行成功则说明你的SQL语句有问题,尝试修改直到插入成功为止,然后将语句格式应用到你的程序当中,对了你的那句话(if($_POST[submit]!==""){})最好改成if($_POST['submit'] && $_POST['submit']!=""){}////////////////////////////
    $_POST[]中的内容要加“''”的