我正在尝试建立一个公共论坛,其中包含每个问题的回复部分。以前,当我编写一些代码以允许用户为每个类别/主题添加问题时,我的sprintf()代码似乎没有任何问题。
但是,既然我正在尝试对我的答复部分进行编码,就没有彻底的错误,但是似乎不起作用。
因为我试图保存回复内容和回复用户,并与帖子主题进行协调,所以我的sprintf()代码分为三部分。我尝试拆分sprintf()并分别处理所有3个部分,但是它们似乎都存在问题。
这是我的代码:
fyi,comment_message是评论的输入文本框的名称; topicid是页面的ID,并链接到帖子所在主题的ID; post_by代表哪个用户正在发布评论
if ($_SERVER['REQUEST_METHOD'] == 'POST') {
$postContent = mysqli_real_escape_string($conn, $_POST['comment_message']);
$sql = sprintf("INSERT INTO posts (post_content, post_topic, post_by)
VALUES('%s', %s, %s);", $postContent, $topicid, $_SESSION['userId']);
$result = mysqli_query($conn, $sql);
if(!$result)
{
//something went wrong, display the error
echo 'An error occured while inserting your post. Please try again later.';
$sql = "ROLLBACK;";
$result = mysqli_query($conn, $sql);
}
else
{
$sql = "COMMIT;";
$result = mysqli_query($conn, $sql);
echo 'Success!';
}
}
我非常感谢您的帮助!谢谢!