如何将变量插入名为mysql的表中?

时间:2019-05-06 06:12:37

标签: php mysql sql

我有两个数据库-一个用于餐厅用户(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中。可以跨两个数据库完成吗?

4 个答案:

答案 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); 

因此更改“值”部分以反映每一列的变量。