我正在创建一个社交网络,我为用户提供了发布状态的选项。当我点击帖子状态到时间轴按钮时,即使我填写了该框,我也会得到You didn't enter anything. <a href= home.php>Try again</a><br />
的else语句。我已多次尝试修复此问题,但我不能。当我将帖子状态单击到时间轴按钮时,我想将信息存储在我的数据库中,以便我可以将其发布到他们的个人资料中。有人可以帮我解决这个问题吗?
home.php:
<form action="poststatus.php" method="post">
<button id="bt6" type="submit" name="button">Post status to your timeline</button>
<b>
<div contenteditable="true" placeholder="Post status" name="userpost" id="content"></div>
</b>
</form>
poststatus.php:
<?php
error_reporting(E_ALL);
ini_set('display_errors', 1);
include("connect.php");
if (isset($_POST['button'])) {
if (empty($_POST["userpost"])) {
echo "You didn't enter anything. <a href= home.php>Try again</a><br />";
} else {
$sql = "INSERT INTO posts (username, post, post_date) VALUES ('" . $username . "', '" . $post . "', '" . $date . "' )";
if (mysqli_query($conn, $sql)) {
echo "Your post was added.";
} else {
"<br>error posting . <br> <a href= home.php>Try again</a> " . mysqli_error($conn);
}
}
}
答案 0 :(得分:0)
尝试将<div>
更改为<textarea>
或<input>
元素。
答案 1 :(得分:0)
任何具有contenteditable标记的元素都不会使用HTML表单发送。如果你想捕获div中的内容,你需要设置事件来获取所述div的内部内容。通常,在所述元素之后添加隐藏输入以在表单数据中包含html。
http://jakiestfu.github.io/Medium.js之类的库可以帮助您添加漂亮的标记。
答案 2 :(得分:0)
<form action="test_stack_two.php" method="post">
<button id="bt6" type="submit" name="button">Post status to your timeline</button>
<b>
<div contenteditable="true" placeholder="Post status" id="content">
<textarea name="userpost"></textarea>
</div>
</b>
</form>
使用此更改home.php,它将起作用