我正在努力找出我的代码中的问题,我在这个平台上阅读了一些类似的问题,但没有一个帮助我解决问题。我已经指出错误消息中列出了哪一行(警告:PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: parameter was not defined in C:\xampp\htdocs\Website system\sale.php on line 60)
<?php
//link files
require ('config.php'); //database connection
//get user input from the form
if (isset($_POST['formSubmit'])) {
//product details
$brand = checkData($_POST['brand']);
$model = checkData($_POST['model']);
$serial = checkData($_POST['serialnumber']);
$yearModel = checkData($_POST['yearmodel']);
$productType = checkData($_POST['type']);
$condition = checkData($_POST['condition']);
//supplier details
$supplierId = checkData($_POST['supplierid']);
$supInvoice = checkData($_POST['supplierinvoice']);
$supPrice = checkData($_POST['supplierprice']);
//customer details
$custId = checkData($_POST['customerid']);
$custInvoice = ($_POST['custinvoice']);
$custPrice = checkData($_POST['custprice']);
$purchaseDate = checkData($_POST['purchasedate']);
require_once ('config.php'); //database connection
global $dbselect;
//SQL - add data to database
$qry1 = 'INSERT INTO product
(brand, model, serial, yearmodel, type, prodCondition, purchDate, supplierId, supInvoice, supPrice, custId, custInvoice, custPrice)
VALUES
(:brand, :model, :serial, :yearModel, :productType, :condition, :purchaseDate, :supplierId, :supInvoice, :supPrice, :custId, :custInvoice, :custPrice)';
//execute query
$statement = $dbselect->prepare($qry1);
$statement->bindValue(':brand', $brand);
$statement->bindValue(':model', $model);
$statement->bindValue(':serial', $serial);
$statement->bindValue(':yearModel', $yearModel);
$statement->bindValue(':productType', $productType);
$statement->bindValue(':prodCondition', $condition);
$statement->bindValue(':purchaseDate', $purchaseDate);
$statement->bindValue(':supplierId', $supplierId);
$statement->bindValue(':supInvoice', $supInvoice);
$statement->bindValue(':supPrice', $supPrice);
$statement->bindValue(':custId', $custId);
$statement->bindValue(':custInvoice', $custInvoice);
$statement->bindValue(':custPrice', $custPrice);
if ($statement->execute()) { //////<-PROBLEM ON THIS LINE//////
echo 'New Sale Added Successfully!';
} else {
echo 'Not successfull.';
}
$statement->closeCursor();
}
//validate data
function checkData($data) {
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
return $data;
}
?>