php中写不进数据库

我看的是张恩民老师的php100教程
根据教程写的php程序:
$link_mysql = mysql_connect(localhost,name,password) or die("链接数据库失败");
mysql_select_db(message,$link_mysql);
$sql = "insert into liuyan(id,user,title,content,date) values ('null','张三','测试标题','测试内容',now())"; //id为主键自增长!
mysql_query($sql);
if(mysql_query($sql)){
echo "发布成功";
}else{
echo "发布失败";
}

sql语句单独在phpmyadmin里执行都写入成功,可用在php中就写不进去了!大虾帮看一下谢谢!
就连照搬老师的源代码和数据库测试还是写不进去,首先数据库连接是成功的!
写不进数据库 有哪些原因?大虾帮下忙

第1个回答  2010-11-30
1,看看链接数据库的地址、用户名跟密码是否正确,并且要用引号引起来;
2,mysql_select_db(message,$link_mysql);message也用引号引起来
3,看一下数据库编码是什么格式,最好加上如mysql_query("set names utf8");,要不然插入中文有可能出现乱码
4,如果id为主键自增长!,那么插入的时候就不用写id值了,也就是$sql = "insert into liuyan(user,title,content,date) values ('张三','测试标题','测试内容',now())";
5,执行sql的时候最好不要执行两次,因为这样为有很多重复数据,如果想判断插入是否成功,那么你可以
$bool=mysql_query($sql);
if($bool){
echo "发布成功";
}else{
echo "发布失败";
}
第2个回答  2010-12-03
是数据库名称写错了,message要加双引号,php找不到你的数据库,你下面的语法没错,我试了,但是最好是id自增就别加id那个字段了。还有,
mysql_query($sql);
if(mysql_query($sql))这里肯定会执行两次sql,不好,直接要一个if(mysql_query($sql))就可以了,mysql_query就是返回一个boolean
第3个回答  2010-11-30
在mysql_query($sql) or die(mysql_error()); 看看数据库报什么错误 如果SQL语句在phpmyadmin里执行成功 有可能是乱码问题引起的, 在 mysql_query($sql);前边加一句mysql_query("set names gb2312"); 具体用什么字符集根据你的数据库设计本回答被提问者采纳
第4个回答  2010-11-30
mysql_select_db(message,$link_mysql);
这里的问题?数据库名 message 加上单引号

mysql_query($sql);
if(mysql_query($sql)){
echo "发布成功";
}else{
echo "发布失败";
}
还有这块,成功插入也是一次插入两条本回答被网友采纳
第5个回答  2010-11-30
mysql_query($sql);
if(mysql_query($sql)){
echo "发布成功";
}else{
echo "发布失败";
}
这里相当于执行俩次,而且我觉得应该加一个链接标识吧,mysql_query($sql,$sqlconn)
-------------------------------------------------------------------------------

$mysql_server_name="localhost"; //数据库服务器名称
$mysql_username="root"; // 连接数据库用户名
$mysql_password="root"; // 连接数据库密码
$mysql_database="test"; // 数据库的名字
$sqlconn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password);
if(!$sqlconn) die("连接失败:" . mysql_error());
if(!mysql_select_db($mysql_database,$sqlconn)) die("选择数据库失败:" . mysql_error());
mysql_query("SET NAMES 'UTF8'",$sqlconn);//设定数据链接的字符编码,根据实际情况更改
$sql = "insert into liuyan(user,title,content,date) values ('张三','测试标题','测试内容',now())"; //id为主键自增长,就不管他
if(mysql_query($sql,$sqlconn)){
echo "发布成功";
}else{
echo "发布失败";
}

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网