PHP Ошибка: эта страница не работает localhost перенаправил вас слишком много раз - PullRequest
0 голосов
/ 18 января 2020

Я делаю блог с маленьким cms с php и моим sql. Когда я обновляю форму, я получаю сообщение об ошибке, говорящее, что эта страница не работает, localhost перенаправлял вас слишком много раз.

Я думаю, что есть какая-то проблема с моим действием или перенаправлением формы. Пожалуйста, помогите мне. Пожалуйста, ознакомьтесь с моими add_post. php и функциями. php file

Иерархия проектов

enter image description here

Есть форма, в которой я сделал свою форму


<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>

Полный проект

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...