你的小弟为什么插入操作不执行呢?db = new mysqli('localhost','aaaaa','aaaaa','news'); $query = 'insert into new values (' . ' null,2,\'测试标题2\',\'测试内容2\',\'2006-03-08\'' . ' )'; 这样的语句怎么插得入?认真看帮助。
$query = 'insert into new values (' . ' null,2,\'测试标题2\',\'测试内容2\',\'2006-03-08\'' . ' )'; 先不说你这里这么多的单引号问题,sql语句本身就不对,你要把数据插到数据库里对应的字段里去阿!insert into new (这里是你的数据库对应的字段名列表) values (对应前面字段名的数据列表)
呵呵,昨天一着急,把语句复制到myadmin里执行,却是可以执行的,但是在PHP里就是不行,一着急把myadmin生成的语句复制出来了 我的语句是这样的 $query ="insert into new (tid,title,cont) values ('2','测试测试','测试')"; 就这样还是执行不了,也不报错,实在找不到原因! 请各位帮助下看看有什么可能啊
$query ="insert into new (tid,title,cont) values ('2','测试测试','测试')";===> $query ="insert into new(tid,title,cont) values('2','测试测试','测试')"; 把空格去掉 又或者你的tid是数值的那么'2'==>2
<?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 都不行 晕啊
把语句复制到myadmin里执行,却是可以执行的,但是在PHP里就是不行你的数据库连接有问题
数据库连接应该没有问题 因为 语句换成 $query ="SELECT * FROM `new` WHERE id=1"; 就可以查询了:(
试试下面的: <? $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); ?>
不好意思,在第二行应该是"new"而不是"news"
不好意思,在第二行应该是"news"而不是"new"......骗帖.....
呵呵 是news没错的 但是一样的执行了以后不报错,但是数据也是没写进去
改成$exec ="insert into 'new' (tid,title,cont) values (2,'测试测试','测试')";试试
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把语句放在命令行里执行,出现这样的提示
new 表的结构是这样的 字段 类型 整理 属性 Null 默认 额外 操作 id int(10) 否 auto_increment tid int(10) 否 title varchar(20) gb2312_chinese_ci 是 NULL cont mediumtext gb2312_chinese_ci 否 date datetime 否
$query = 'insert into new values ('
. ' null,2,\'测试标题2\',\'测试内容2\',\'2006-03-08\''
. ' )';
这样的语句怎么插得入?认真看帮助。
. ' null,2,\'测试标题2\',\'测试内容2\',\'2006-03-08\''
. ' )';
先不说你这里这么多的单引号问题,sql语句本身就不对,你要把数据插到数据库里对应的字段里去阿!insert into new (这里是你的数据库对应的字段名列表) values (对应前面字段名的数据列表)
我的语句是这样的
$query ="insert into new (tid,title,cont) values ('2','测试测试','测试')";
就这样还是执行不了,也不报错,实在找不到原因!
请各位帮助下看看有什么可能啊
$query ="insert into new(tid,title,cont) values('2','测试测试','测试')";
把空格去掉
又或者你的tid是数值的那么'2'==>2
$query ="insert into new(tid,title,cont) values('2','测试测试','测试')";
$result = $db->query($query);
if ($result)
echo $db->affected_rows.'条数据成功插入.';
$db->close();
?>试过'2'也试过2 都不行 晕啊
因为 语句换成
$query ="SELECT * FROM `new` WHERE id=1";
就可以查询了:(
<?
$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);
?>
字段 类型 整理 属性 Null 默认 额外 操作
id int(10) 否 auto_increment
tid int(10) 否
title varchar(20) gb2312_chinese_ci 是 NULL
cont mediumtext gb2312_chinese_ci 否
date datetime 否
insert into `new`(tid,title,cont,date) values ('2','试一试啊试一','测试',now());返回
QUERY ok,1 row affected(0.02 sec)怎么写进PHP就不行了啊 :(
要么 sql语句的连接不对 写错了
要么 设置的是 tid numeric primary key identity
你的tid已经成为自动编号了 你还插什么插 都填加进去了 还插!
要么 把 cookie 删删 或者干脆 reset
再不行 formate reset your system
我现在把脚本存为UTF-8 把库的字符集也设置为utf-8
可以执行插入操作了,可是显示出来的乱码
哎~~继续郁闷...