echo $sql;
再把结果复制到MYSQL客户端输入```看下提示什么错误```

解决方案 »

  1.   

    lz:values(null,'0','".$comid."',....................)按这种格式'".$comid."'写,ok!
      

  2.   

    now()是什么?字符串?那要加‘’
      

  3.   

    $sql="insert into pcn_com( `com_child` ,`com_fatherid` , `com_workid` ,`com_name` ,`com_title` , `com_text` , `com_time` )
     values(0,$comid,$workid,$uname,$tt,$tx,now())";
    $query=mysql_query($sql,$link) or die("error4");
      

  4.   

    你的问题肯定是来源于字段类型和插入数据类型不匹配,怀疑你那几个`com_name` ,`com_title` , `com_text`,都是char类型的,char类型字段要插入的数据必须加单引号,mysql5是不会自动转换类型的。\'$uname\',\'$tt\',\'$tx\'这样写,或者'".$uname."','"com_title"',还有die("error4");不如写成die(mysql_errno().":".mysql_error());。NOW()是mysql的函数。得到当前日期+时间,可以指定参数来格式化,不能给其加单引号。
    如果你这个字段总是插入当前日期和时间,并不是char类型。不如将其定义为timestamp类型,以后插入数据的时候就不用插它了,这个字段在碰到有数据插入这个表的时候,自动调用NOW()函数插入。