mysql数据库不能通过php的insert语句直接赋值

我用insert语句不能直接往mysql数据库中写入数据,但是可以通过$_GET或者$_POST方法获取变量值,然后让insert语句引用这个变量,这样就可以写进数据库了... 我用insert语句不能直接往mysql数据库中写入数据,但是可以通过$_GET或者$_POST方法获取变量值,然后让insert语句引用这个变量,这样就可以写进数据库了。
就像这样:$sql="insert into test (id,uid,regdate,remark) values ('$id','$uid',NOW(),'$remark')";可以写入数据,
这样就不行:$sql="insert into test (id,username,regdate,remark) values ('3','小西',NOW(),'教师')";
我已经排除的可能:1.不是``(反引号)的问题 ,也不该加不加‘’(单引号)的问题,id是自增的 但是不是id的问题 2.我可以在phpmyadmin里面通过SQL语句操作数据库 数据库、数据表没有问题 3.不是字体的问题

我用的环境是:windows7+php5.3.3+apache2.2.15+mysql5.1.49
O(∩_∩)O谢谢
展开
 我来答
皮皮同学cocc3
2010-08-07 · TA获得超过107个赞
知道答主
回答量:81
采纳率:0%
帮助的人:31.8万
展开全部
那很有可能是regdate的格式问题,regdate的格式要和now()返回值的格式一样。

如果不是这个问题你可以通过一个PHP函数来检查这个问题。
在mysql_query($sql);后面加上:
echo mysql_error();
然后然后就可以看到mysql返回的错误了。
mwtcz
2010-08-07 · TA获得超过1322个赞
知道小有建树答主
回答量:1367
采纳率:50%
帮助的人:1016万
展开全部
这样的问题不可能吧,呵呵,你把两条sql语句打印出来,看看有什么不一样。

唯一能怀疑的,就是编码问题了。难道你直接写的sql编码会不对吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
硬件小哥哥
2010-08-07 · TA获得超过512个赞
知道小有建树答主
回答量:470
采纳率:0%
帮助的人:348万
展开全部
ID是自动增量的话,可以不在插入语句中填写ID值,插入成功后会自动生成的。
ID应是数值型的,不要用''来括着它。
$sql="insert into test (id,username,regdate,remark) values (3,'小西',NOW(),'教师')";

$sql="insert into test (username,regdate,remark) values ('小西',NOW(),'教师')";
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9011806
2010-08-07 · TA获得超过753个赞
知道小有建树答主
回答量:1016
采纳率:66%
帮助的人:162万
展开全部
差个指针吧,$sql="insert into test (id,username,regdate,remark) values ('$3','$小西',NOW(),'$教师')";
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式