警告:mysqli_query()至少需要2个参数,1个参数在第10行的C:\wamp64\www\OBJEPRO\dbcrud.php中给出
我正在使用OOP、PHP创建一个简单的CRUD,但是当我运行add.PHP和update和delete文件时,会出现错误。每个文件中都有相同的错误(add.php、update.php、delete.php) 以下是错误: 注意:第12行C:\wamp64\www\OBJEPRO\add.php中的未定义索引:Supplier\u ID 注意:未定义索引:第12行C:\wamp64\www\OBJEPRO\add.php中的公司名称 警告:mysqli_query()至少需要2个参数,1个参数在第10行的C:\wamp64\www\OBJEPRO\dbcrud.php中给出 下面是add.php中的代码警告:mysqli_query()至少需要2个参数,1个参数在第10行的C:\wamp64\www\OBJEPRO\dbcrud.php中给出,php,mysql,oop,crud,Php,Mysql,Oop,Crud,我正在使用OOP、PHP创建一个简单的CRUD,但是当我运行add.PHP和update和delete文件时,会出现错误。每个文件中都有相同的错误(add.php、update.php、delete.php) 以下是错误: 注意:第12行C:\wamp64\www\OBJEPRO\add.php中的未定义索引:Supplier\u ID 注意:未定义索引:第12行C:\wamp64\www\OBJEPRO\add.php中的公司名称 警告:mysqli_query()至少需要2个参数,1个参数在
<?php
require_once("header.php");
require_once("dbcrud.php");
if (isset($_POST['submit'])) {
}
$dbcrud=new dbcrud;
$result=$dbcrud->create($_POST['Supplier_ID'],$_POST['Company_Name']);
if($result){
echo "<br />";
echo "Successfully added.";
}else{
echo "<br />";
echo "Error!";
}
?>
<p><h3>Add Supplier:</h3></p>
<form action="" method="POST">
<p>Supplier ID: <input type="text" name="Supplier_ID"></p>
<p>Company Name: <input type="text" name="Company_Name"></p>
<p><input type="submit" name="submit" value="Save"></p>
</form>
添加供应商:
供应商ID:
公司名称:
下面是dbcrud.php中的代码:
<?php
require_once("dbconn.php");
class dbcrud {
public function __construct(){
$dbconn=new dbconn;
}
public function create($Supplier_ID, $Company_Name){
$result=mysqli_query("INSERT INTO suppliers(Supplier_ID, Company_Name) VALUES('$Supplier_ID','$Company_Name')");
return $result;
}
public function read(){
$result=mysqli_query("SELECT * suppliers");
return $result;
}
public function update($Supplier_ID, $Company_Name){
$result=mysqli_query("UPDATE suppliers SET Company_name='{$Company_Name}' WHERE Supplier_ID={$Supplier_ID}'");
return $result;
}
public function delete($Supplier_ID){
$result=mysqli_query("DELETE FROM suppliers WHERE Supplier_ID={$Supplier_ID}");
return $result;
}
}
?>
的文档清楚地说明了如何使用该方法的两个备选方案。你把两种都混在一起,这是行不通的
忽略很多其他问题,我敢说对你的类的修改会使你更接近你想要的。它将数据库连接对象存储在类属性中,以便在实际查询中重用
<?php
require_once("dbconn.php");
class dbcrud {
private $dbconn;
public function __construct(){
$this->dbconn = new dbconn;
}
public function create($Supplier_ID, $Company_Name){
$result = mysqli_query(
$this->dbconn,
"INSERT INTO suppliers(Supplier_ID, Company_Name) VALUES('$Supplier_ID','$Company_Name')"
);
return $result;
}
public function read(){
$result = mysqli_query(
$this->dbconn,
"SELECT * FROM suppliers"
);
return $result;
}
public function update($Supplier_ID, $Company_Name){
$result = mysqli_query(
$this->dbconn,
"UPDATE suppliers SET Company_name='{$Company_Name}' WHERE Supplier_ID={$Supplier_ID}'"
);
return $result;
}
public function delete($Supplier_ID){
$result = mysqli_query(
$this->dbconn,
"DELETE FROM suppliers WHERE Supplier_ID={$Supplier_ID}"
);
return $result;
}
}
您收到的错误信息非常清楚,并指出了问题所在。您确实查阅了文档以了解如何正确使用该函数?如果是这样的话,那么你在错误信息中不明白的到底是什么?你的构造函数实际上是无用的。我还是个学生,还在学习,顺便说一句。谢谢!我还是个学生,还在学习,但非常感谢你们。