目前,我的数据库中有一张名为“工厂”的表。在该表中,有两列,“Fac_ID”和“Fac_Name”。现在,我想创建一个函数来将一些新工厂添加到表“工厂”中。
'Fac_ID' 和 'Fac_Name' 的值必须相同,这意味着当我想添加工厂 'F09' 时,Fac_ID 和 Fac_Name 的值必须相同,即 'F09'。
当我以前连接MYSQL数据库(PDO)时,添加成功。但是当我更改为 MSSQL (PDO) 时,
" 未捕获的 PDOException: SQLSTATE[HY093]: 参数编号无效:参数未在 C:\xampp\htdocs\ebooking\add_factory.php:24 中定义:#0 C:\xampp\htdocs\ebooking\add_factory.php( 24): PDOStatement->bindParam(':Fac_ID', 'F11')"
这是我的 add_factory.php 代码
<?php
require_once "configPDO.php";
if(isset($_POST['Submit'])) {
$Fac_ID = $_POST['Fac_ID'];
// checking empty fields
if(empty($Fac_ID)) {
if(empty($Fac_ID)) {
echo "<font color='red'>Name field is empty.</font><br/>";
}
//link to the previous page
echo "<br/><a href='javascript:self.history.back();'>Go Back</a>";
} else {
// if all the fields are filled (not empty)
//insert data to database
$sql = "INSERT INTO factory(Fac_Name, Fac_ID) VALUES(:Fac_Name, :Fac_Name)";
$query = $conn->prepare($sql);
$query->bindParam(':Fac_Name', $Fac_ID,);
$query->bindParam(':Fac_ID', $Fac_ID,);
$query->execute();
//display success message
header("Location:factory.php");
}
}
?>
这是我的 configPDO.php
<?php
$servername = 'xxx.xx.xx.xxx';
$username = 'xx';
$password = 'xxxxxx';
$dbname = 'xxxx';
try {
$conn = new PDO("sqlsrv:Server=$servername;Database=$dbname", $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}
catch(PDOException $error) {
$error->getMessage();
}
?>
我能知道是什么问题吗?添加工厂的 HTML 输入是“Fac_ID”
江户川乱折腾