php mysql插入不进去数据

$title=$_POST["title"];
$ssfl=$_POST["ssfl"];
$ly=$_POST["ly"];
$zz=$_POST["zz"];
$url=$_POST["url"];
$img=upload_file($_FILES["img"],"./uploadfile/");
$content=$_POST["content"];
$sql="SELECT cname,ename FROM en_newsclass where id=$ssfl";
$e=mysql_fetch_array(mysql_query($sql),MYSQL_ASSOC);
$ename=$e["ename"];
$cname=$e["cname"];

$sql="INSERT INTO `en_news` (`title`, `ssfl`, `ly`, `zz`, `img`, `content`, `tim`, `url`, `hit`) VALUES ('$title', '$ssfl', '$ly', '$zz', '$img', '$content', 'now()', '$url', '1');";
mysql_query($sql);
if(mysql_affected_rows()){
echo "<script>alert('添加文章成功!');location.href='./add_news.php';</script>";
}else{
echo "<script>alert('添加文章出错!');</script>";
exit;
}

所有的值都可以获得到,就是插入不到mysql数据库里面。

第1个回答  2010-07-14
并不是能取到值就能把数据插入进去的。这里你可能需要考虑几个问题:
1、你使用的用户是否具有权限;
2、你的SQL语句是否正确;
3、你的SQL语句中是否含有特殊字符;
4、你的数据库服务器是否工作正常。
你好好检查一下的,个人认为出错的最大可能性是你的sql语句中含有特殊字符。你可以将SQL语句打印出来看看,或者将SQL语句打印出来后放到数据库服务器上执行一下,看看有什么提示。
第2个回答  2010-07-14
sql语句多了个分号

$sql="INSERT INTO `en_news` (`title`, `ssfl`, `ly`, `zz`, `img`, `content`, `tim`, `url`, `hit`) VALUES ('$title', '$ssfl', '$ly', '$zz', '$img', '$content', 'now()', '$url', '1');";

改为

$sql="INSERT INTO `en_news` (`title`, `ssfl`, `ly`, `zz`, `img`, `content`, `tim`, `url`, `hit`) VALUES ('$title', '$ssfl', '$ly', '$zz', '$img', '$content', 'now()', '$url', '1')";
第3个回答  推荐于2016-11-03
这个的原因可就多了。建议在你出错那段加以点儿mysql报错。这样起码知道为什么出错。很有可能是你的title之类的里面有多余的引号而没有被escape。
一般起码会加上addslashes()。比如 $title=addslashes($_POST["title"]);

echo mysql_error();
echo "<script>alert('添加文章出错!');</script>";本回答被提问者采纳
第4个回答  2010-07-14
你当前的用户有没有写入数据的权限?

相关了解……

你可能感兴趣的内容

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