简体   繁体   English

将数据插入多个不同的数据表

[英]Inserting data into multiple different data tables

I was trying to insert data into multiple data tables.我试图将数据插入到多个数据表中。 It's only working for single data tables, I'm just wondering how I would be able to insert data into two data tables.它仅适用于单个数据表,我只是想知道如何将数据插入到两个数据表中。 I've been struggling with this issue for the past few hours and can't seem to get to the bottom of it.在过去的几个小时里,我一直在为这个问题苦苦挣扎,似乎无法深入了解它。 If anyone has any advice please let me know.如果有人有任何建议,请告诉我。 :) :)

    <?php
/* Attempt MySQL server connection. Assuming you are running MySQL
server with default setting (user 'root' with no password) */
$link = mysqli_connect("localhost","ivodatat","","");


if($link === false){
    die("ERROR: Could not connect. " . mysqli_connect_error());
}

// Inputs for security 
$fname = mysqli_real_escape_string($link, $_REQUEST['fname']);
$sname = mysqli_real_escape_string($link, $_REQUEST['sname']);
$address = mysqli_real_escape_string($link, $_REQUEST['address']);
$email = mysqli_real_escape_string($link, $_REQUEST['email']);
$phone = mysqli_real_escape_string($link, $_REQUEST['phone']);
$mac = mysqli_real_escape_string($link, $_REQUEST['mac']);
$installer = mysqli_real_escape_string($link, $_REQUEST['installer']);
$status = mysqli_real_escape_string($link, $_REQUEST['status']);

// Insert Query 
$sql1 = "INSERT INTO leadlist (fname, sname, address, email, phone, mac, installer, status) VALUES ('$fname', '$sname', '$address', '$email', '$phone', '$mac', '$installer', '$status')";

$sql2 = "INSERT INTO $installer (fname, sname, address, email, phone, mac, installer, status) VALUES ('$fname', '$sname', '$address', '$email', '$phone', '$mac', '$installer', '$status')";



if (mysqli_multi_query($link, $sql1, $sql2)){



                mysqli_close($conn);
                header("Location: installercontrol.php");




                exit;

} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}

// Close The Connection
mysqli_close($link);
?>

To use mysqli_multi_query you need to append the queries to each other as it only takes one query argument.要使用mysqli_multi_query您需要将查询相互附加,因为它只需要一个查询参数。 From the manual:从手册:

Executes one or multiple queries which are concatenated by a semicolon.执行一个或多个由分号连接的查询。

Try this instead:试试这个:

mysqli_multi_query($link, $sql1 . ';' . $sql2)

You should probably also update your error message:您可能还应该更新您的错误消息:

echo "ERROR: Could not able to execute $sql1;$sql2. " . mysqli_error($link);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM