$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、你使用的用户是否具有权限;
2、你的SQL语句是否正确;
3、你的SQL语句中是否含有特殊字符;
4、你的数据库服务器是否工作正常。
你好好检查一下的,个人认为出错的最大可能性是你的sql语句中含有特殊字符。你可以将SQL语句打印出来看看,或者将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')";
一般起码会加上addslashes()。比如 $title=addslashes($_POST["title"]);
echo mysql_error();
echo "<script>alert('添加文章出错!');</script>";本回答被提问者采纳