PHP写入数据库、失败

<?phpinclude_once("common.php");if($_POST['fenlei']=="study"){$title=$_POST['title'];... <?php
include_once("common.php");
if($_POST['fenlei']=="study"){
$title=$_POST['title'];
$text=$_POST['text'];
$name=$_COOKIE['username'];
$where=$_POST['fenlei'];
$sql = mysql_query("insert into articles(id,data,title,text,where,zz) values ('','','$title','$text','$where','$name')");
if(!$sql){
echo "发帖失败";
}else{
echo "成功";
}
}
?>
<br>
<a href="index.php">返回主界面</a>
展开
 我来答
飞丹爱恋
2013-07-12
知道答主
回答量:40
采纳率:0%
帮助的人:24.2万
展开全部
where是关键字,加单引号就可以了,如:'where'
更多追问追答
追问
我定义了$where
追答
我是说你前面的where
琐碎碎琐琐碎碎
2013-07-12 · TA获得超过476个赞
知道小有建树答主
回答量:535
采纳率:0%
帮助的人:423万
展开全部

插入失败的可能原因很多,比如db连接啊,sql语句啊。可以从以下角度测试:

  1. 对应的sql语句在db中执行成功了吗?

  2. 程序中db连接成功吗?

  3. 打开php调试的提示,看英文提示信息。这点很有用。

单看代码,好像没错。不过,变量在sql中,我一般是字符串形式连接使用,而不是直接变量形式写入。

初学者的一点看法。

更多追问追答
追问
  1. common.php是连接成功了的

  2. 字串符连接试过,没用

追答
sql语句没问题吧?运行后提示什么?楼下的方法好,看看sql的内容。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hdreamfly
2013-07-12 · TA获得超过107个赞
知道小有建树答主
回答量:231
采纳率:0%
帮助的人:112万
展开全部
$sql = mysql_query("insert into articles(id,data,title,text,where,zz) values 这里不要空格,至少你贴出来的我看了下是空格了的('','','$title','$text','$where','$name')"); 暂时根据你提供的信息也只能知道这些。

提供的信息: 数据写入失败

猜测错误:数据库连接
字段类型
追问
和这个没关系,我已经试过了
你看看是不是这个有问题,我是提交了表单的
分类:
学习

再看看PHP语句
追答
发相关代码 到 邮箱 1374217668@qq.com ;公司QQ禁止了 现在发 现在给你搞定;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
慈一禾佳
2013-07-12 · 超过44用户采纳过TA的回答
知道小有建树答主
回答量:168
采纳率:0%
帮助的人:108万
展开全部
where 好像不能定义为字段名称吧 ,修改一下 。 ID,data 为空值还写入什么啊.....
你写的SQL 语句 MYSQL 应该执行不了...
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7fb0964
2013-07-12
知道答主
回答量:33
采纳率:0%
帮助的人:14.7万
展开全部
$sql = mysql_query("insert into articles(`id`,`data`,`title`,`text`,`where`,`zz`) values ('','','$title','$text','$where','$name')");
试一下行不行,如果还不行的话把where这个字段改一下名字,比如wheres,where可能是系统保留关键字或变量,创建字段时应该避免使用。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
敖建德0W
2013-07-17 · TA获得超过793个赞
知道小有建树答主
回答量:237
采纳率:0%
帮助的人:156万
展开全部
学姐姐 同志 我是中北大学的小孩子 想知道学姐是读207所出来了吗 那条件到底咋样呢???
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zqsguilunmei
2013-07-12 · 超过38用户采纳过TA的回答
知道小有建树答主
回答量:335
采纳率:0%
帮助的人:125万
展开全部
$sql = mysql_query("insert into articles(id,data,title,text,where,zz) values ('','','$title','$text','$where','$name')"); 你给这个数据库语句 echo $sql 然后看到效果后,在mysql 中执行一下,你估计是 SQL 语句写错了。
更多追问追答
追问
测试以后就是4个字:发帖失败
追答
你给echo 出sql 语句,后面的 exit();  退出来。 看效果。看echo 的这个 sql语句 能不能在mysql 中执行。  如果是字段的数据类型错了,那你自己看吧。帮不了你了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(7)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式