把$query改为
$query = "SELECT * FROM `new` WHERE id=1";一切正常输出,怎么插入就不行呢,郁闷啊

解决方案 »

  1.   

    你的小弟为什么插入操作不执行呢?db = new mysqli('localhost','aaaaa','aaaaa','news');
      $query = 'insert into new values ('
            . ' null,2,\'测试标题2\',\'测试内容2\',\'2006-03-08\''
            . ' )';
    这样的语句怎么插得入?认真看帮助。
      

  2.   

    $query = 'insert into new values ('
            . ' null,2,\'测试标题2\',\'测试内容2\',\'2006-03-08\''
            . ' )';
    先不说你这里这么多的单引号问题,sql语句本身就不对,你要把数据插到数据库里对应的字段里去阿!insert into new (这里是你的数据库对应的字段名列表) values (对应前面字段名的数据列表)
      

  3.   

    呵呵,昨天一着急,把语句复制到myadmin里执行,却是可以执行的,但是在PHP里就是不行,一着急把myadmin生成的语句复制出来了
    我的语句是这样的
    $query ="insert into new (tid,title,cont) values ('2','测试测试','测试')";
    就这样还是执行不了,也不报错,实在找不到原因!
    请各位帮助下看看有什么可能啊
      

  4.   

    $query ="insert into new (tid,title,cont) values ('2','测试测试','测试')";===>
    $query ="insert into new(tid,title,cont) values('2','测试测试','测试')";
    把空格去掉
    又或者你的tid是数值的那么'2'==>2
      

  5.   

    <?php$db = new mysqli('localhost','root','12345','news');
    $query ="insert into new(tid,title,cont) values('2','测试测试','测试')";
    $result = $db->query($query);
      if ($result)
    echo $db->affected_rows.'条数据成功插入.';  
      $db->close();
    ?>试过'2'也试过2 都不行  晕啊
      

  6.   

    把语句复制到myadmin里执行,却是可以执行的,但是在PHP里就是不行你的数据库连接有问题
      

  7.   

    数据库连接应该没有问题
    因为 语句换成
    $query ="SELECT * FROM `new` WHERE id=1";
    就可以查询了:(
      

  8.   

    试试下面的:
    <?
    $conn=mysql_connect("127.0.0.1","root","12345") or die("不能连接到数据库".mysql_error());
    mysql_select_db("news",$conn) or die("不能选择数据库".mysql_error());
    $exec ="insert into new (tid,title,cont) values (2,'测试测试','测试')";
    mysql_query($exec);
    ?>
      

  9.   

    不好意思,在第二行应该是"new"而不是"news"
      

  10.   

    不好意思,在第二行应该是"news"而不是"new"......骗帖.....
      

  11.   

    呵呵  是news没错的  但是一样的执行了以后不报错,但是数据也是没写进去
      

  12.   

    改成$exec ="insert into 'new' (tid,title,cont) values (2,'测试测试','测试')";试试
      

  13.   

    以前在mssql里写东西的时候,看语句出错不出错,只要把语句复制到企业管理器里运行一下就行了,MYSQL有没有类似的方法呢?
      

  14.   

    error 1064 <42000>:you have an error in your sql syntax;check the manual that corresponds to your mysql server version for the right syntax to use near ''new' (tis,title,cont) values(2,'测试测试','测试')'at line 1把语句放在命令行里执行,出现这样的提示
      

  15.   

    new 表的结构是这样的
    字段  类型        整理         属性        Null  默认   额外   操作 
    id    int(10)                              否       auto_increment               
    tid   int(10)                              否                 
    title varchar(20) gb2312_chinese_ci        是   NULL                
    cont  mediumtext gb2312_chinese_ci         否                 
    date  datetime                                   否  
      

  16.   

    `new`不是单引号,是1键左边的那个`,也就是~键
      

  17.   

    真的是昏了,我甚至把这个语句复制到 命令行下面执行:
    insert into `new`(tid,title,cont,date) values ('2','试一试啊试一','测试',now());返回
    QUERY ok,1 row affected(0.02 sec)怎么写进PHP就不行了啊 :(
      

  18.   

    要么 类型不对 字符与数值型的不分
    要么 sql语句的连接不对 写错了
    要么 设置的是 tid   numeric primary key identity  
    你的tid已经成为自动编号了 你还插什么插 都填加进去了 还插!
    要么 把 cookie 删删 或者干脆 reset
    再不行 formate  reset your system
      

  19.   

    问题找到了,原来是mysql5.0不支持中文的缘故
    我现在把脚本存为UTF-8 把库的字符集也设置为utf-8
    可以执行插入操作了,可是显示出来的乱码
    哎~~继续郁闷...