2014-01-27 56 views
1

我正在製作一個有博客的網站(project.intrepidem.net)。我讓它工作,這樣當我在phpmyadmin面板中創建新帖子時,它會生成HTML並將新博客帖子放在頁面上,就像我想要的那樣。問題是我用一個新的帖子表單創建了一個管理面板,我希望能夠填寫表單並自動將帖子添加到數據庫中,並且不會更新。如何從我的新發布管理面板將新博客文章添加到我的發佈數據庫?

的形式面板:

<h1>Create a new Post</h1> 
<form action="new_script.php" method="post"> 
    <input type="text" name="title" placeholder="Post Title"/> 
    <select name="authorId"> 
     <option value="1">First Name</option> 
     <option value="2">Second Name</option> 
     <option value="3">Third Name</option> 
    </select>  
    <textarea name="post" placeholder="Write your post."></textarea> 
    <input type="submit" value="post"/>   
</form> 

這裏的new_script.php頁:

<?php 
$title = $_POST['title']; 
$post = $_POST['post']; 
$authorId = $_POST['authorId']; 

//connect to database 
$connect = mysqli_connect('localhost','username', 'password', 'database'); 

//SQL query 
$query = "INSERT INTO `blog_posts`(`title`, `post`, `author_id`) VALUES ([$title],[$post],[$authorId])"; 

//run the query 
$run = mysqli_query($connect, $query); 

    //testing to see if values came from HTML page 
    echo $title; 
    echo $post; 
    echo $authorId; 

    echo "<br/><a href='../index.php' title='Go Home'><--Go Home</a>"; 

?> 

數據庫名稱,用戶名和密碼在$連接是正確的。我知道表單中的值正在通過,因爲我將它們打印在底部,並且在嘗試更新表單時顯示正確的值。出於某種原因,帖子不會保存到數據庫,這意味着它不會更新頁面。

謝謝。我只是在學習PHP,所以它肯定是一個愚蠢的錯誤,我無法看到。如果您需要更多信息,請與我們聯繫。

+0

這個固定。一旦我在這裏得到更多的觀點,我會給你投票。謝謝。 – kauffee000

回答

3

你的變量必須在引號,而不是[],更改:

$query = "INSERT INTO `blog_posts`(`title`, `post`, `author_id`) VALUES ([$title],[$post],[$authorId])"; 

$query = "INSERT INTO `blog_posts`(`title`, `post`, `author_id`) VALUES ('$title','$post','$authorId')"; 
相關問題