簡體   English   中英

我收到此錯誤,有人可以幫忙嗎? 列數與第1行的值數不匹配

[英]I get this error, can someone help? Column count doesn't match value count at row 1

列數與第1行的值數不匹配有人可以幫我嗎? 我不知道...

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

$product_cat = mysqli_real_escape_string($conn,$_POST['prodotto_cat']);
$category_cat = mysqli_real_escape_string($conn,     $_POST['categoria_cat']);
$details_cat = mysqli_real_escape_string($conn,     $_POST['dettagli_cat']);

$sql = mysqli_query($conn, "SELECT id FROM prodotti_cat WHERE     product_cat='$product_cat' LIMIT 1");
$productMatch_cat = mysqli_num_rows($sql); // count the output amount
if ($productMatch_cat > 0) {
    echo 'Mi dispiace, hai inserito un duplicato "Nome prodotto" nel     sistema, <a href="admin.php">&nbsp; &nbsp; &nbsp; RITORNA</a>';
    exit();
}

$sql = mysqli_query($conn, "INSERT INTO prodotti_cat (product_cat,     details_cat,  category_cat)
  VALUES('$product_cat','$details_cat','$category_cat',now())") or die     (mysqli_error($conn));
  $pid_cat = mysqli_insert_id($conn);

您試圖將4個值插入3列。 觀察:

INSERT INTO prodotti_cat (product_cat,    details_cat,    category_cat)
                  VALUES ('$product_cat', '$details_cat', '$category_cat', now())

哪一列應該包含now()值?

將第四列添加到列列表,或從值列表中刪除第四個值。


在使用它的同時,您還應該開始研究什么是SQL注入,因為當前您的代碼可能對它開放。 是一個良好的開端,因為是這樣 當您嘗試通過清除輸入來解決問題時,僅此還不夠。 與其試圖阻止用戶輸入惡意代碼,不如首先不要將用戶輸入作為代碼來執行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM