简体   繁体   English

无法使用php将数据插入mysql

[英]Can't insert data with php into mysql

so i am working on the simple project and i dont know why, but i can't insert data into the database 所以我正在做一个简单的项目,我不知道为什么,但是我不能将数据插入数据库

Here is my connection to database 这是我与数据库的连接

 <?php
$servername = "localhost";
$username = "root";
$password = "root";
$database = "register";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $register);

// Check connection
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}
echo "Connected successfully";
?>

And in this part of code i am trying to insert data: 在这段代码中,我试图插入数据:

<?php
  if (isset($_POST['submitreg'])){
    $username = mysqli_real_escape_string($conn, $_POST['username']);
    $email = mysqli_real_escape_string($conn, $_POST['email']);
    $password = mysqli_real_escape_string($conn, $_POST['password']);
    $sql = "INSERT INTO users (email, username, password) VALUES ('$email', '$username', '$password')";
    if (mysqli_query($conn, $sql)) {
        echo "New record created successfully";
        header("Location: signin.php");
    } else {
        echo "Error: " . $sql . "<br>" . mysqli_error($conn);
    }
}
mysqli_close($conn);
 ?>

And then i am inserting the code, i am getting this error: 然后我插入代码,出现此错误:

Error: INSERT INTO users (email, username, password) VALUES ('gerulisjonas@gmail.com', 'jonas2422', 'password') 错误:向用户(电子邮件,用户名,密码)插入VALUES(“ gerulisjonas@gmail.com”,“ jonas2422”,“密码”)

Thank you in advance :) 先感谢您 :)

extra: Form 额外:表格

<form id="register" class="signinform" action="includes/registerinc.php" method="post">
            <div class="formcenter">
            <input type="text" name="username" value="" placeholder="user name"><br>
            <input type="email" name="email" value="" placeholder="email"><br>
            <input type="password" id="passwordid" name="password" value="" placeholder="password"><br>
            <input type="password" name="passwordtwo" value="" placeholder="repeat password"><br>
            <input type="submit" name="submitreg" class="btn btn-success" value="Register"></input>
            </div>
          </form>

When creating your connection you named the variable that holds the database name $database , but when you pass it along to mysqli_connect you are using $register . 创建连接时,您将变量命名为持有数据库名称$database的变量,但是将其传递给mysqli_connect ,则使用的是$register

Try this instead: 尝试以下方法:

$database = "register";

// Create connection
$conn = mysqli_connect($servername, $username, $password, $database);

嘿,对不起,我打扰了你,我只是运行我的代码,发现我的register.php文件中没有包含connection.php文件。

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

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