首页 > 解决方案 > 使用 MySql DB 在 PHP 上的多表上插入数据

问题描述

因此,我正在尝试创建一个程序来注册所有电子设备并将其与员工合作(例如:我们购买一台计算机并将其交给员工“Mark”)并且在该 WebApp 上我想注册该项目和合作伙伴它给用户/员工。我已经尝试了一些东西,但我没有到达我想要的地方,在 MySQL 上我有 3 个表:

其中项目是设备,用户是员工,事件是设备的注册但是在PHP代码上,我不知道该怎么做,如何用PHP设置一个页面,我可以从3中输入数据表?我有以下代码:

if ($valid) {
        $pdo = Database::connect();
        $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $sql = "INSERT INTO ativos (ativo,comentario,data_aquisicao,localizacao,fabricante,modelo,anexo,anexo_a,numero_serie,imei,ativo_sap,evento,data_entrega,data_devolucao,data_estravio,username) values(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
        $q = $pdo->prepare($sql);
        $q->execute(array($ativo,$comentario,$data_aquisicao,$localizacao,$fabricante,$modelo,$anexo,$anexo_a,$numero_serie,$imei,$ativo_sap,$evento,$data_entrega,$data_devolucao,$data_estravio,$username));
        Database::disconnect();
        header("Location: index.php");
    }

标签: phpmysql

解决方案


我的朋友,它非常简单,如果您想使用单个查询语句将值插入 3 个表中,那么请尝试此操作。

<?php
$con=mysqli_connect("your_hostname","your_user","your_password","your_db");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

// Perform queries 
$sql="INSERT INTO Table_1 
      (
        FieldName1,
        FieldName2,
        FieldName3
      ) 
      VALUES 
      (
        $value1,
        $value2,
        $value3
      );
      INSERT INTO Table_2 
      (
        FieldName1,
        FieldName2,
        FieldName3
      ) 
      VALUES 
      (
        $value1,
        $value2,
        $value3
      );
      INSERT INTO Table_3 
      (
        FieldName1,
        FieldName2,
        FieldName3
      ) 
      VALUES 
      (
        $value1,
        $value2,
        $value3
      );";
mysqli_query($con,$sql);

mysqli_close($con);
?>

推荐阅读