Php 如何创建两个查询mysql insert和create table

Php 如何创建两个查询mysql insert和create table,php,mysql,sql,database,mysqli,Php,Mysql,Sql,Database,Mysqli,我想创建两个查询,一个用于将数据输入一个表,另一个用于创建新表。这是我创建新表但不插入数据的代码。我错在哪里?多谢各位 $sql = "INSERT INTO progetti(data, ora, nome_progetto)VALUES('".$_POST["data"]."','".$_POST["ora"]."','".$_POST["nome_progetto"]."')"; "CREATE TABLE $_POST[nome_progetto] (

我想创建两个查询,一个用于将数据输入一个表,另一个用于创建新表。这是我创建新表但不插入数据的代码。我错在哪里?多谢各位

$sql = "INSERT INTO progetti(data, ora, nome_progetto)VALUES('".$_POST["data"]."','".$_POST["ora"]."','".$_POST["nome_progetto"]."')";

          "CREATE TABLE $_POST[nome_progetto] (
            id INT(11) AUTO_INCREMENT PRIMARY KEY,
            data date,
            intervento varchar(30),
            descrizione varchar(70),
            ore int(2)
          )";
  • 使用不同的SQL语句(在案例2中,一个用于insert,另一个用于create table)
  • 在PHP中使用抽象层(PDO)提供的prepare语句
  • 了解

  • 在这里您可以创建if-else语句,如果插入完成,则将运行创建

    <?php
    
    /*
    * These are Database Credentials
    */
        $servername = "localhost";
        $username = "root";
        $password = " ";
        $dbname = "test_db";
    
        /*
        * Intiating the Database connection
        */
        $conn = new mysqli($servername, $username, $password, $dbname);
    
        /*
        * Checking the Databse connection
        */
        if ($conn->connect_error) {
            die("Connection failed: " . $conn->connect_error);
        } 
    
         $create = "CREATE TABLE ".$_POST[nome_progetto]." (
                        id INT(11) AUTO_INCREMENT PRIMARY KEY,
                        data date,
                        intervento varchar(30),
                        descrizione varchar(70),
                        ore int(2))";
                $result = $conn->query($create);     
    
        if ($result === TRUE) {
         $sql = "INSERT INTO progetti(data, ora, nome_progetto)VALUES('".$_POST["data"]."','".$_POST["ora"]."','".$_POST["nome_progetto"]."')";
    
          $insert = $conn->query($sql); 
          if ($insert === TRUE) {
            echo "New record created successfully";
        } else {
            echo "Error: " . $sql . "<br>" . $conn->error;
        }
    
        }
    
    
        $conn->close();
        ?>
    

    PHP不支持多查询。顺便说一句,请了解SQL注入以及如何防止它们@。。。你的代码根本不安全,你的数据库可能在几秒钟内被黑客入侵。请在查询中使用准备好的语句作为用户输入。您需要将这两个
    SQL
    语句分开。@Twinfriends您好,谢谢您的回答,查询不起作用,请输入完整的代码。该应用程序安装在本地PC上,未连接到Internet。我是php新手,有些语法我不知道。$sql=“插入progetti(data,ora)值(“$\u POST[“data”]。”,“$\u POST[“ora”]。”,)”;$query=$conn->query($sql)$结果=$query->result();如果(isset($result)){$sql=“CREATE TABLE$_POST[nome_progetto](id INT(11)AUTO_INCREMENT主键,data date,interferto varchar(30),”;$query=$conn->query($sql);$query->result();}Hi Max一开始不用担心,您应该在本地系统中安装wamp服务器,然后在C:/Wamp64/www中有一个文件夹,创建带有sample.php的文件并粘贴该代码更新代码中的数据库凭据,然后您必须通过Post值检查我已修改了答案,现在一切正常!谢谢你帮助我!