2012-02-01 123 views
0

我試圖做一個簡單的MySQL INSERT查詢,但它似乎沒有工作...我進入它直接在phpMyAdmin和它的作品,但不是在PHP ...MySQL的INSERT查詢不起作用

有我的代碼:

<?php 
$id = rand(0000,9999); 
$user_id = mysql_real_escape_string($_POST['user_id']); 
$content = mysql_real_escape_string($_POST['content']); 
$blog_id = mysql_real_escape_string($_POST['blog_id']); 
$moderated = 1; 
$date = date("Y\-m\-d"); 
$time = date("H\:i\:s"); 

if ($user_id != "" && $content != "" && $blog_id != "") 
{ 
    include('php/connect_db.php'); 
    mysql_query("INSERT INTO `comments` (`id`,`user_id`,`content`,`blog_id`,`moderated`,`date`,`time`) VALUES ('".$id."','".$user_id."','".$content."','".$blog_id."','".$moderated."','".$date."','".$time."')"); 
    header('Location: blog.php?id='.$blog_id.'#comments'); 
} 
else 
{ 
    header('Location: blog.php?id='.$blog_id.'&error#comments'); 
} 
?> 

它不工作,但我不知道爲什麼......

connect_db.php

<?php 
$con = mysql_connect($db_host, $db_user, $db_pass); 
if (!$con) 
{ 
    die('Could not connect to database: ' . mysql_error()); 
} 

mysql_select_db($db_name, $con); 
?> 
+4

你會得到什麼錯誤信息?請始終發佈相關錯誤。 – 2012-02-01 21:51:35

+0

我沒有收到任何錯誤信息...! – 2012-02-01 21:51:58

+0

所有的數據類型是否都是字符串,或者是user_id數字? – 2012-02-01 21:52:08

回答

0

我不包括config.cms.php包含連接信息到數據庫。失敗!

現在它工作的很棒!

+0

哈哈,是的,這總是一件好事;)好吧,正如Wrikken發佈的那樣 - 使用mysql_error總是一個好主意,正如Michael發佈的那樣 - 請記住在你的帖子中包含錯誤消息:)這將使得這項工作幫助我們時更容易;) – 2012-02-01 22:04:40

-2

我注意到你使用的是字符'而不是字符'。

這是拋出PHP關閉?

+1

它不是「而不是」,它是MySQL標識符引用。 – 2012-02-01 21:59:12

+1

''的用法就在這裏...它用來逃避表和列的名稱 – klaustopher 2012-02-01 22:01:20

+0

你每天都會學到新的東西。多麼羞辱!謝謝(你的)信息。 – gibbotronic 2012-02-01 22:12:28