我正在尝试在博客帖子上插入评论,但我一直收到错误消息。我不知道数据库是否设置正确,或者我是否遗漏了一些语法错误。我有一个表单页面和一个句柄页面。这是形式:
<h1><center> Add comment form</center></h1>
<form action="hc.php" method="post">
<fieldset>
<h3>Post comment.</h3> <br>
<textarea name="comment"cols="50"rows="10"id="comment" >
</textarea><br>
<input type="hidden" name="comid" value="'.$comid .'"/>
<input type="hidden" name="blogid" value="'.$blogid .'"/>
<input type="submit"value="Submit"name="submit" />
<input type="reset"value="Clear">
</fieldset>
</form>
我的句柄页面如下:
<?php
include ('./includes/mysqli_connect.php');
$blogid = $_SESSION['blogid'];
$comment = $_SESSION['comment'];
$comdate = $_SESSION['comdate'];
$comid = $_SESSION['comid'];
$userid = $_SESSION['userid'];
//if (isset($_GET['blogid']) && isset($_GET['userid']) && isset($_GET['comment'])){
$query = "INSERT INTO comments(comid, blogid, userid, comment, comdate) VALUES ('$comid', '$blogid','$userid','$comment','$comdate')";
$result= @mysqli_query($dbc,$query);
$comid=NULL;
$blogid=NULL;
$userid=NULL;
if ($results) {
echo "Thank you your information has been submitted.";
} else {
echo "There was an error! " . mysqli_error($dbc);
}
?>
我是php新手并感谢您的帮助。
错误消息是:
出错了!无法添加或更新子行:外键 约束失败(
codecrew_users
。comments
,CONSTRAINTcomments_ibfk_1
外键(blogid
)参考blog
(blogid
))
答案 0 :(得分:0)
$query = "INSERT INTO comments(comid, blogid, userid, comment, comdate) VALUES ('$comid', '$blogid','$userid','$comment','$comdate')";
所以......你的表comments
上有一些需要外键的字段。
我不确定哪个值导致错误但是您的某个值与另一个表中的id不匹配。
因此其中一个值无效:
'$comid', '$blogid','$userid','$comment','$comdate'