我有两个数据库-一个用于餐厅用户(user_reg),一个用于餐厅菜单项(restaurant_menu)。
一种表单将此特定变量$rname
存储在user_reg中,这是饭店名称。然后,它在restaurant_menu中创建一个名为$rname
的表,其中包含item_name,类别,价格等列。
我想要做的是将记录插入到$ rname的适当表中,但是由于是特定用户添加项目,因此我需要将其项目移到表中以获取其特定餐厅名称。
当我使用特定的表名(例如“ kfc”)时,它会完美工作
$sql = "INSERT INTO kfc (item_name, price, description, category, origin, sub_category) VALUES (('".$item_name."'), ('".$price."'), ('".$description."'), ('".$category."'), ('".$origin."'), ('".$sub_category."'))";
但这是我正在工作的:
$item_name = $_POST["item_name"];
$price = $_POST["price"];
$description = $_POST["description"];
$category = $_POST["category"];
$origin = $_POST["origin"];
$sub_category = $_POST["sub_category"];
$rname = $_POST["rname"];
$email = $_POST["email"];
$sql = "INSERT INTO $rname (item_name, price, description, category, origin, sub_category) VALUES (('".$item_name."'), ('".$price."'), ('".$description."'), ('".$category."'), ('".$origin."'), ('".$sub_category."'))";
它只需要将那些输入的值记录到表$ rname中。可以跨两个数据库完成吗?
答案 0 :(得分:1)
尝试
对于Mysql
$sql = mysql_query($dbconnectivity,("INSERT INTO $rname (item_name, price, description, category, origin, sub_category) VALUES ('$item_name', '$price', '$description', '$category', '$origin', '$sub_category')");
对于Mysqli
$sql = mysqli_query($dbconnectivity,("INSERT INTO $rname (item_name, price, description, category, origin, sub_category) VALUES ('$item_name', '$price', '$description', '$category', '$origin', '$sub_category')");
答案 1 :(得分:0)
将其放入您的sql变量
$sql = "INSERT INTO $rname (item_name, price, description, category, origin, sub_category) VALUES ('$item_name', '$price', '$description', '$category', '$origin', '$sub_category'";
我更喜欢mysqli_query($connectionhandler, $sql);
方法
答案 2 :(得分:0)
/ *在这里,我们将使用提取函数将数组键的值转换为可访问变量。无需声明变量并在其中存储发布值。但是,从用户界面发送表名不是一个好习惯,这可能会导致系统被黑客入侵* / 此处显示的代码
extract($_POST);
$sql = "INSERT INTO $rname (item_name, price, description, category, origin, sub_category) VALUES ('$item_name','$price', '$description', '$category', '$origin', '$sub_category')";
答案 3 :(得分:0)
如前所述,最好通过其变量来调用每个值。
插入值的语法是
INSERT INTO table (column1, column2, column3)
VALUES (value1, value2, value3);
因此更改“值”部分以反映每一列的变量。