2013-05-07 125 views
-1

我有問題。在那裏我想通過之前檢索一些數據來插入新行。然後我輸入2個新數據並點擊按鈕提交。我已經爲所有變量回顯數據並獲取所有數據,但不能插入數據庫並顯示查詢錯誤。這是我的代碼插入php - 查詢錯誤

* Matric,Cat_name和Product_name - 檢索的數據。
*錯誤在查詢$ SQL

if (isset($_POST['add'])) { 

    $Matric = $_POST['Matric']; 
    $Total_sales = $_POST['Total_sales'];  
    $Cat_name= addslashes($_POST['Cat_name']); 
    $Product = addslashes($_POST['Product_name']); 
    $tarikh = addslashes($_POST['Date']); 

    $data = "SELECT participant.*,sales.* FROM participant 
    LEFT JOIN sales ON sales.Matric = participant.Matric 
    WHERE sales.Product_name='$Product'" ; 
    $result = mysql_query($data) or die('SQL error'); 
    $row = mysql_fetch_assoc($result); 

    $gambar = $row['img']; 

    echo $Matric; 
    echo $Total_sales; 
    echo $Cat_name; 
    echo $Product; 
    echo $tarikh; 
    echo $gambar; 


    $sql="INSERT INTO sales (Matric, Total_sales, Cat_name, Product_name, img, Date) values ('$Matric', '$Total_sales', '$Cat_name', '$Product', '$gambar', '$tarikh')"; 
    $result=mysql_query($sql) or die("Suck"); 


    if ($result) 
     echo 'Add success'; 
    else 
     echo 'Add fail'; 

} 
+7

將die(「Suck」)更改爲die(mysql_error()),以便查看錯誤的原因。 – Barmar 2013-05-07 10:11:29

+0

我收到錯誤 - 重複條目。我想複製Cat_name和Product_name的條目 – 2013-05-07 10:24:44

+0

這意味着您的表中有一個唯一的鍵,這可以防止您複製這些列。如果您需要允許重複項,請將索引更改爲非唯一。 – Barmar 2013-05-07 10:26:46

回答

4

日期是保留關鍵字使用反引號操作符來逃避它

$sql="INSERT INTO sales (Matric, Total_sales, Cat_name, Product_name, img, `Date`) values ('$Matric', '$Total_sales', '$Cat_name', '$Product', '$gambar', '$tarikh')"; 
+0

噢,OK了:)謝謝 – 2013-05-14 05:44:41

+0

歡迎,我現在拿出評論 – 2013-05-14 05:45:34

0
$sql="INSERT INTO sales (Matric, Total_sales, Cat_name, Product_name, img, `Date`) values ('{$Matric}', '{$Total_sales}', '{$Cat_name}', '{$Product}', '{$gambar}', '{$tarikh}')"; 

「」 下的變量在{}

-1

日期是保留關鍵字。使用任何其他名稱。

+0

日期可以是一個字段的名稱,只要你有反引號 – 2013-05-07 10:16:36