我有一个textarea问题,我无法使用post方法获取数据。 我通过phpmyadmin检查了我的数据库,这段代码没有保存任何东西。我做错了什么?表单操作页面是同一页面。 DB连接:
<?php
$connection = mysqli_connect('localhost', 'root', '', 'test_db');
if($connection == false) {
echo "Could not connect to database";
echo mysqli_connect_error;
exit();
}
&GT;
这是php代码:
<?php
date_default_timezone_set('UTC');
if (isset($_POST['comment'])) {
$commentText = htmlspecialchars($_POST['comment']);
$commentPubDate = htmlspecialchars(date("d.m.Y H:i:s"));
mysqli_query($connection, "INSERT INTO `identify` (comments, compubdate) VALUES ('$commentText','$commentPubDate')");
}
$allComments = mysqli_query($connection, "SELECT * FROM `comments`");
$allCommentsPubDate = mysqli_query($connection, "SELECT * FROM `compubdate");
print_r(mysqli_fetch_array($allComments));
print_r(mysqli_fetch_array($allCommentsPubDate));
?>
和html代码:
<form method="post" action="index.php">
<textarea rows="5" cols="80" id="comment-input" placeholder="Leave a comment..." name="comment"></textarea>
<input type="submit" id="comment-submit">
</form>
这是我得到的错误:
警告:mysqli_fetch_array()要求参数1为mysqli_result,第62行/Library/WebServer/Documents/index.php中给出布尔值
我的问题不同,因为INSERT有错误,而不是SELECT。 SELECT工作正常。
答案 0 :(得分:-1)
你在插入查询中使用单引号可能你必须从值中删除这个(&#39;)符号希望这会对你有所帮助
if (isset($_POST['comment'])) {
$commentText = htmlspecialchars($_POST['comment']);
$commentPubDate = htmlspecialchars(date("d.m.Y H:i:s"));
mysqli_query($connection, "INSERT INTO `identify` (comments, compubdate) VALUES ('".$commentText."','".$commentPubDate."')");
}