-1

我有问题。我想通过之前检索一些数据来插入新行。然后我输入2个新数据并单击按钮提交。我已经回显了所有变量的数据并获取了所有数据,但无法插入数据库并显示查询错误。这是我的代码

*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';

}
4

4 回答 4

4

Date 是保留关键字,使用反引号运算符对其进行转义

$sql="INSERT INTO sales (Matric, Total_sales, Cat_name, Product_name, img, `Date`) values ('$Matric', '$Total_sales', '$Cat_name', '$Product', '$gambar', '$tarikh')";
于 2013-05-07T10:12:00.440 回答
2

日期是保留关键字

https://dev.mysql.com/doc/refman/5.5/en/reserved-words.html

尝试使用

'日期'

于 2013-05-07T10:14:52.463 回答
0
$sql="INSERT INTO sales (Matric, Total_sales, Cat_name, Product_name, img, `Date`) values ('{$Matric}', '{$Total_sales}', '{$Cat_name}', '{$Product}', '{$gambar}', '{$tarikh}')";

"" 下的变量在 {} 下使用

于 2013-05-07T10:14:34.237 回答
-1

日期是保留关键字。使用任何其他名称。

于 2013-05-07T10:15:29.777 回答