1

カスタム ブログの基本的な送信システムをセットアップしています。

これは、挿入されたデータをデータベースに送信しようとする PHP セクションです。

<?php
    session_start();
    if(!isset($_SESSION['user_id'])){
        header('Location: login.php');
        exit();
    }
    include('../includes/db_connect.php');
    if(isset($_POST['submit'])){
        $newTitle = $_POST['newTitle'];
        $newPost = $_POST['newPost'];
        $my_date = date("Y-m-d H:i:s");
        if(!empty($newPost))
            if(!empty($newTitle)){
        $sql="INSERT INTO posts  (title, body)
    VALUES($newTitle, $newPost)";
        $query = $db->query($sql);
        if($query){
                echo "Post entered to database";
            }else{
                echo "Error Submitting the data";
            }
        }
    }
    ?>

次に、提出フォームがあります。何らかの理由でこれが誤った終わりであると確信していますが、その理由はわかりません。

<form action="<?php echo $_SERVER['PHP_SELF']?>"name="newTitle" method="post">
                <form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
                    <p>Title:</p><br><input type="text" name="newTitle">
                    <textarea name="newPost" cols="110" rows="25"/></textarea><br>
                    <label for="newPost">Add New Post</label><input type="submit" name="submit" value="submit"/>
                        </form>

これはデータベースのテーブルです:

post_id (A_I)
user_id
title
body
category_id
posted(datetime)

私はこの分野では初心者なので、あまり厳しくしないでください :)

4

2 に答える 2

0

単一のフォーム タグのみを使用します。

<form action="<?php echo $_SERVER['PHP_SELF']?>" method="post">
                    <p>Title:</p><br><input type="text" name="newTitle">
                    <textarea name="newPost" cols="110" rows="25"/></textarea><br>
                    <label for="newPost">Add New Post</label>
                     <input type="submit" name="submit" value="submit"/>
               </form>

PHPコードでは、 isset() 関数を使用してデータを確認できます

if(isset($_POST['submit'])){
if(isset($_POST['newTitle']) && ($_POST['newPost']))
        $newTitle = $_POST['newTitle'];
        $newPost = $_POST['newPost'];
        $my_date = date("Y-m-d H:i:s");
        $sql="INSERT INTO posts  (title, body)
    VALUES('$newTitle', '$newPost')";  //use variable in single quote.
        $query = $db->query($sql);
        if($query){
                echo "Post entered to database";
            }else{
                echo "Error Submitting the data";
        }

    }
于 2013-08-25T19:34:48.277 に答える