Я делаю блог с маленьким cms с php и моим sql. Когда я обновляю форму, я получаю сообщение об ошибке, говорящее, что эта страница не работает, localhost перенаправлял вас слишком много раз.
Я думаю, что есть какая-то проблема с моим действием или перенаправлением формы. Пожалуйста, помогите мне. Пожалуйста, ознакомьтесь с моими add_post. php и функциями. php file
Иерархия проектов
Есть форма, в которой я сделал свою форму
<form action="includes/functions.php" method="post" enctype="multipart/form-data">
<div class="form-group">
<label for="title">Post Title</label>
<input type="text" name="title" placeholder="Post Title" class="form-control">
</div>
<div class="form-group">
<label for="author">Post Author</label>
<input type="text" name="author" placeholder="Post Author" class="form-control">
</div>
<div class="form-group">
<label for="category">Post Category</label>
<select name="category" class="form-control">
<?php
while($row = mysqli_fetch_array($res)){
$cat_title = $row['cat_title'];
echo "<option value='$cat_title'>$cat_title</option>";
}
?>
</select>
</div>
<div class="form-group">
<label for="category_id">Post Category ID</label>
<select name="category_id" class="form-control">
<?php
$sql = "SELECT * FROM categories";
$res = mysqli_query($connection , $sql);
while($row = mysqli_fetch_array($res)){
$cat_title = $row['cat_title'];
$cat_id = $row['cat_id'];
echo "<option value='$cat_id'>$cat_id - $cat_title</option>";
}
?>
</select>
</div>
<div class="form-group">
<label for="content">Post Content</label>
<textarea name="content" id="" cols="80" rows="8" placeholder="Post Content" class="form-control"></textarea>
</div>
<div class="form-group">
<label for="tags">Post Tags</label>
<input type="text" name="tags" placeholder="Separate tags with a coma (,)" class="form-control">
</div>
<div class="form-group">
<label for="status">Post Status</label>
<select name="status" class="form-control">
<option value="draft">Draft</option>
<option value="published">Published</option>
</select>
</div>
<div class="form-group">
<label for="post_image">Post Image</label>
<input type="file" name="post_image" class="form-control">
</div>
<div class="form-group">
<input type="submit" name="publish" value="Publish Post" class="btn btn-primary form-control">
</div>
</form>
Это мои функции. php file
function add_post(){
global $connection ;
if(isset($_POST['publish'])){
$post_title = $_POST['title'];
$post_author = $_POST['author'];
$post_category = $_POST['category'];
$post_category_id = $_POST['category_id'];
$post_content = $_POST['content'];
$post_tags = $_POST['tags'];
$post_status = $_POST['status'];
$date = date("l d F Y");
$post_view = 0;
$post_comment_count = 0;
if (isset($_FILES['post_image'])){
$dir = "../images/";
$target_file = $dir.basename($_FILES['post_image']['name']);
if(move_uploaded_file($_FILES['post_image']['tmp_name'],$target_file)){
echo "Image was uploaded";
}else{
echo "something went wrong";
}
}
$query = "INSERT INTO posts(post_title, post_author, post_category, post_category_id, post_content, post_image, post_date, post_comment_count, post_views, post_tags, post_status)
VALUES('$post_title', '$post_author', '$post_category', '$post_category_id', '$post_content', '$target_file', '$date', '$post_comment_count', '$post_view', '$post_tags', '$post_status')";
$result = mysqli_query($connection, $query);
if(!$result){
die("Could not send data " . mysqli_error($connection));
header('Location: ../posts.php?source=add_new');
}else{
echo "Post has been added";
header("Location: ../posts.php?Post_added?");
}
}
}
сообщений. php
<?php include 'includes/header.php'; ?>
<div id="wrapper" >
<!-- Navigation -->
<?php include 'includes/navigation.php'; ?>
<div id="page-wrapper">
<div class="container-fluid">
<!-- Page Heading -->
<div class="row">
<h1 class="page-header">
Welcome to the Administration Panel
</h1>
</div>
<?php
if (isset($_GET['source'])) {
// echo "good to go";
$source = $_GET['source'];
}
switch ($source) {
case 'add_new':
include "includes/add_post.php";
break;
default:
header("Location: posts.php");
break;
}
?>
</div>
</div>
<!-- /.row -->
</div>
<!-- /.container-fluid -->
</div>
<!-- /#page-wrapper -->
</div>
<!-- /#wrapper -->
<!-- jQuery -->
<script src="bootstrap/js/jquery.js"></script>
<!-- Bootstrap Core JavaScript -->
<script src="bootstrap/js/bootstrap.min.js"></script>
</body>
</html>
Полный проект