我到处找过,但找不到这个问题的答案。我见过几种帮助人们的解决方案,但是当我尝试它时,我发现我做的一切都是正确的,没有什么可修复的。我正在制作一个论坛,我正在尝试将它们插入 mysql 表中,但每次我尝试时都会说:
"字段列表"中的未知列"6c09e4fe82d47011bf9b25b05946307f"。
长代码是其中一个用户的用户 ID,它应该入,但由于某种原因它正在寻找具有该名称的列。我只进入了第一个查询,但有错误,所以第二部分可能完全没问题,我不知道。
$sql = "INSERT INTO
topics(topic_subject,
topic_date,
topic_cat,
topic_by)
VALUES('" . mysql_real_escape_string($_POST['topic_subject']) . "',
NOW(),
" . mysql_real_escape_string($_POST['topic_cat']) . ",
". $_SESSION['userid'] ."
)";
$result = mysql_query($sql);
if(!$result)
{
//something went wrong, display the error
echo 'You did everything right, yet there is an error. WEIRD RIGHT???<br /><br />' . mysql_error();
$sql = "ROLLBACK;";
$result = mysql_query($sql);
}
else
{
//the first query worked, now start the second, posts query
//retrieve the id of the freshly created topic for usage in the posts query
$topicid = mysql_insert_id();
$sql = "INSERT INTO
posts(post_content,
post_date,
post_topic,
post_by)
VALUES
('" . mysql_real_escape_string($_POST['post_content']) . "',
NOW(),
" . $topicid . ",
". $_SESSION['userid'] ."
)";
$result = mysql_query($sql);
您没有在插入中引用字符串:
". $_SESSION['userid'] ."
应该是:
'". $_SESSION['userid'] ."'
" . mysql_real_escape_string($_POST['topic_cat']) . ",
需要用引号括起来
'" . mysql_real_escape_string($_POST['topic_cat']) . ",'
只需echo $sql;
,您就会看到错误。
还要确保你session_start();