Я довольно новичок в PHP и создаю небольшой блог.Я пытаюсь отправить форму для создания новой записи, но она не работает, и я не могу понять, почему.Я сравнил его с моим рабочим кодом для регистрационной формы, и он выглядит так же.Я не получаю никаких ошибок, просто перезагружаю страницу и не публикую в базу данных.
Вид - v_newpost.php
<article>
<?php
if (!isset ($_SESSION['username']))
{
?>
<span class="alert">Please login to create a post.</span>
<?php
}
else
{
?>
<form class="newpost" action="" method="post">
<fieldset>
<legend>Submit a new post</legend>
<?php if ($error['alert'] != '') { echo "<span class='alert'>".$error['alert']."</span>";} ?>
<ul>
<li>
<label for="title">Title:</label>
<input type="text" name="title" value="<?php echo $input['title']; ?>" required autofocus>
</li>
<li>
<label for="content">Content:</label>
<textarea id="content" name="content" rows=6 value="<?php echo $input['content']; ?>"></textarea>
</li>
</ul>
</fieldset>
<fieldset>
<button type="submit" class=postbutton>Publish</button>
</fieldset>
</form>
</div>
<?php
}
?>
</article>
newpost.php
<?php
require_once 'includes/connection.php';
$error['alert'] = '';
$input['title'] = '';
$input['content'] = '';
if (isset($_POST['submit']))
{
if ($_POST['title'] == '' || $_POST['content'] == '')
{
$error['alert'] = 'Please give your post a title and content.';
$input['title'] = $_POST['title'];
$input['content'] = $_POST['content'];
include_once('v_newpost.php');
}
else
{
$input['title'] = htmlentities($_POST['title'], ENT_QUOTES);
$input['content'] = htmlentities($_POST['content'], ENT_QUOTES);
if ($stmt = $mysqli->prepare("INSERT INTO posts (title, content) VALUES (?,?)"))
{
$stmt->bind_param("ss", $input['title'], $input['content']);
$stmt->execute();
$stmt->close();
$error['alert'] = '';
$input['title'] = '';
$input['content'] = '';
header('Location: index.php');
}
else
{
$error['alert'] = 'Failed to create post';
}
}
}
else
{
include_once('v_newpost.php');
}
?>
Я уверен, что это, вероятно, что-то глупое, но я просмотрел его так многораз и не могу понять, почему это не работает ...