【发布时间】:2020-10-12 17:57:00
【问题描述】:
我有一个来自 HTML 表单的变量,这些变量当前被发布到我的数据库表中的一个表中。
我想在同一个函数中同时将这些相同的变量发布到其他表中。这可能吗?这是我当前成功发布到一个表的 PHP 函数
<?php
$var1 = $_POST['var1'];
$var2 = $_POST['var2'];
$var3 = $_POST['var3'];
// Database connection
$conn = new mysqli('localhost','user','password','database');
if($conn->connect_error){
echo "$conn->connect_error";
die("Connection Failed : ". $conn->connect_error);
} else {
$stmt = $conn->prepare("insert into table1(var1, var2, var3) values(?, ?, ?)");
$stmt->bind_param("sss", $var1, $var2, $var3);
$execval = $stmt->execute();
echo $execval;
$stmt->close();
$conn->close();
}
?>
并且我希望将以下变量发布到同一个数据库中的多个表中,所以想了以下但它不起作用 -
<?php
$var1 = $_POST['var1'];
$var2 = $_POST['var2'];
$var3 = $_POST['var3'];
// Database connection
$conn = new mysqli('localhost','user','password','database');
if($conn->connect_error){
echo "$conn->connect_error";
die("Connection Failed : ". $conn->connect_error);
} else {
$stmt = $conn->prepare("insert into table1(var1, var2, var3) values(?, ?, ?)");
$stmt->bind_param("sss", $var1, $var2, $var3);
$stmt = $conn->prepare("insert into table2(var1) values(?)");
$stmt->bind_param("s", $var1);
$stmt = $conn->prepare("insert into table3(var2, var3) values(?, ?)");
$stmt->bind_param("ss", $var2, $var3);
$execval = $stmt->execute();
echo $execval;
$stmt->close();
$conn->close();
}
?>
【问题讨论】:
-
不幸的是,这样编码时它不会发布到任何表,存在连接错误
-
尝试调用 $stmt->execute();每次调用 $stmt->bind_param
-
谢谢穆斯塔法,太简单了哈哈!
-
phpMyAdmin 是用 PHP 编写的 MySQL 管理工具,它本身不是数据库。您可能正在使用 MySQL 或 MariaDB 作为数据库。