php 报错求助

提交后提示:
发表失败!
原因:Unknown column '$id' in 'field list'
<?php
include './top.php';
include '../conn.php';
mysql_select_db($my_db,$con);
if(!$_GET['action']=='1'){
//没提交表单
echo '<title>后台 - 发表博文</title><body><form action="?action=1" method="post">
分类名称:<input type="text" name="fenlei" /><br />
博文内容:<textarea name="blog" rols="40" rows="30"></textarea><br />
<input type="submit" value="发表" />
</form></body>';
}else{
//提交了表单
$result=mysql_query("SELECT * FROM blog");
//选取blog表
if(mysql_num_rows($result)){
//该表一共多少行
$id++;
}else{
$id=1;
}
$user='博主';
$fenlei=$_POST['fenlei'];
$content=$_POST['blog'];
$date=time();
$sql='INSERT INTO blog(id,user,fenlei,content,date) VALUES($id,"$user","$fenlei","$content",$date)';
if(mysql_query($sql))
echo "发表成功!";
else
echo $id;
echo "发表失败!<br />原因:".mysql_error();
mysql_close($con);
}
?>

希望大神帮忙搞定
回复列表(14|隐藏机器人聊天)
  • @Ta / 2014-02-10 / /
    把那个插入的$id删除了,那个值留空,前提是你数据库中设置了该字段为自增的。。。
  • @Ta / 2014-02-10 / /
    我只想问问楼猪  你id是神马类型的?
  • @Ta / 2014-02-10 / /
    。。。。你把那个id拿来储存行数干嘛?
  • @Ta / 2014-02-10 / /
    else{
    //提交了表单

    $user='博主';
    $fenlei=$_POST['fenlei'];
    $content=$_POST['blog'];
    $date=time();
    $sql='INSERT INTO blog(id,user,fenlei,content,date) VALUES('',"$user","$fenlei","$content",$date)';
    if(mysql_query($sql))
    echo "发表成功!";
    else
    echo "发表失败!<br />原因:".mysql_error();
    mysql_close($con);
    }
    ?>
  • @Ta / 2014-02-10 / /
    else{
    //提交了表单

    $user='博主';
    $fenlei=$_POST['fenlei'];
    $content=$_POST['blog'];
    $date=time();
    $sql='INSERT INTO blog(id,user,fenlei,content,date) VALUES('',"$user","$fenlei","$content",$date)';
    if(mysql_query($sql))
    echo "发表成功!";
    else
    echo "发表失败!<br />原因:".mysql_error();
    mysql_close($con);
    }
    ?>
  • @Ta / 2014-02-10 / /
    @miss天智@小呆先生,他的错在于引号的不会用
  • @Ta / 2014-02-10 / /
    @自由门@miss天智,id数据类型是int(10),它是记录文章的id,我不知道你们怎么做的,只好这样摸索着写了
  • @Ta / 2014-02-10 / /
    @3srs-arox,?
  • @Ta / 2014-02-10 / /
    ID最好设为主键,再设置自增长,以后插入数据的时候字段ID就可以不加了,它会自动自增长的
  • @Ta / 2014-02-10 / /
    ID最好设为主键,再设置自增长,以后插入数据的时候字段ID就可以不加了,它会自动自增长的
  • @Ta / 2014-02-10 / /
    <?php
    include './top.php';
    include '../conn.php';
    mysql_select_db($my_db,$con);
    if(!$_GET['action']==1){
    //没提交表单
    echo<<<HTML 
    <title>后台 - 发表博文</title><body>
    <form action="?action=1" method="post">
    分类名称:<input type="text" name="fenlei" /><br />
    博文内容:<textarea name="blog" rols="40" rows="30"></textarea><br />
    <input type="submit" value="发表" />
    </form>
    </body>
    HTML;
    }else{




    $user='博主';
    $fenlei=$_POST['fenlei'];
    $content=$_POST['blog'];
    $date=time();
    $sql="INSERT INTO blog(`id`,`user`,`fenlei`,`content`,`date`) VALUES(NULL,'$user','$fenlei','$content','$date')";
    if(mysql_query($sql))
    echo "发表成功!";
    else
    echo $id;
    echo "发表失败!<br />原因:".mysql_error();
    mysql_close($con);
    }
    ?>
  • @Ta / 2014-02-10 / /
    @xggz,感谢,已采取建议
    @自由门,感谢,但代码不能运行,好像有语法错误,不过那个问题解决了,$date又提示同样错误,算了,不用int的数据类型了
  • @Ta / 2014-02-10 / /
    @小呆先生,我的意思就是让你 按照@xggz,说的   吧ID  设置为自动增长  然后 用我那个的
  • @Ta / 2014-02-10 / /
    @自由门,可$date又出现了同样的提示,我认为是int数据类型造成的
    另外,我发现在手机中竟然没有 ` 这个符号
添加新回复
回复需要登录