无法创建数据库 PHP

Cannot Create Database PHP

我开始创建自己的界面以与 MySql 一起使用,尽管我似乎无法使用底部的代码创建数据库。其他一切都有效我也可以回显 $ObtainDatabase 变量以查看它确实存储了一个值。任何建议都会很棒。

<?php
    session_start();

    //define connection
    $conn = new mysqli('localhost', 'over_watch','XXXXXXx','billing');

    //Variables
    $UserEmail = $_SESSION['email'];
    $MysqlUserDataBaseCreate  = $_POST['create_database'];

    //CheckIfUserExists
    $SeeIfUserExist = $conn->prepare("SELECT (email) FROM database_users WHERE email= ?;");
    $SeeIfUserExist->bind_param('s',$UserEmail);
    $SeeIfUserExist->execute();

     $SeeIfUserExist->bind_result($ObtainedEmail);
     $SeeIfUserExist->store_result();
     $SeeIfUserExist->fetch();
     $RowsReturnedFromPreparedStatment = $SeeIfUserExist->num_rows();


    if($RowsReturnedFromPreparedStatment < 1){
      $InsertIntoDatabase = $conn->prepare("INSERT INTO database_users(email,check_if_created) VALUES(?,?);");
      $InsertIntoDatabase->bind_param('ss',$UserEmail,$MysqlUserDataBaseCreate);
      $InsertIntoDatabase->execute();

      $SelectDatabaseToCreate = $conn->prepare(" SELECT (check_if_created) FROM database_users WHERE email = ?;");
      $SelectDatabaseToCreate->bind_param('s', $UserEmail);
      $SelectDatabaseToCreate->execute();

      $SelectDatabaseToCreate->bind_result($ObtainDatabase);
      $SelectDatabaseToCreate->fetch();
      $CreateDatabase = "CREATE DATABASE $ObtainDatabase ;";
      $conn->query($CreateDatabase);

    }else{
      echo 'user permitted to one database';
    }


    ?>

你能试试这个代码吗?

有关此错误的详细信息可以在 mysql 文档中找到。阅读这些细节可以清楚地知道,在同一连接上执行另一个准备语句之前,需要完全获取准备语句执行的结果集。

这是您可以 refer

的文档
<?php
    session_start();

    //define connection
    $conn = new mysqli('localhost', 'over_watch','XXXXXXx','billing');

    //Variables
    $UserEmail = $_SESSION['email'];
    $MysqlUserDataBaseCreate  = $_POST['create_database'];

    //CheckIfUserExists
    $SeeIfUserExist = $conn->prepare("SELECT (email) FROM database_users WHERE email= ?;");
    $SeeIfUserExist->bind_param('s',$UserEmail);
    $SeeIfUserExist->execute();
    $SeeIfUserExist->store_result();

     $SeeIfUserExist->bind_result($ObtainedEmail);
     $SeeIfUserExist->store_result();
     $SeeIfUserExist->fetch();
     $RowsReturnedFromPreparedStatment = $SeeIfUserExist->num_rows();


    if($RowsReturnedFromPreparedStatment < 1){
      $InsertIntoDatabase = $conn->prepare("INSERT INTO database_users(email,check_if_created) VALUES(?,?);");
      $InsertIntoDatabase->bind_param('ss',$UserEmail,$MysqlUserDataBaseCreate);
      $InsertIntoDatabase->execute();
      $InsertIntoDatabase->store_result();

      $SelectDatabaseToCreate = $conn->prepare(" SELECT (check_if_created) FROM database_users WHERE email = ?;");
      $SelectDatabaseToCreate->bind_param('s', $UserEmail);
      $SelectDatabaseToCreate->execute();
      $SelectDatabaseToCreate->store_result();

      $SelectDatabaseToCreate->bind_result($ObtainDatabase);
      $SelectDatabaseToCreate->fetch();
      $CreateDatabase = "CREATE DATABASE $ObtainDatabase ;";
      $conn->query($CreateDatabase);

    }else{
      echo 'user permitted to one database';
    }


    ?>