繁体   English   中英

INSERT INTO 不起作用 php

[英]INSERT INTO doesnt work php

我是 php 的新手。我正在尝试构建一个注册网页,如果输入的电子邮件不存在,它应该插入输入的值。代码工作正常,并且在输入新邮件时返回成功。但是问题是当我检查我的数据库时没有插入新值。我的代码有什么错误吗? 提前致谢。

<?php
session_start();
if(isset($_POST['signup'])){
include_once("db.php");

$email=strip_tags($_POST['emailid']);
$username=strip_tags($_POST['username']);
$password=strip_tags($_POST['password']);

if($email==NULL || $username== NULL || $password==NULL){

   print "Missing one of the fields";
}
else{

$email=stripslashes($email);
$username=stripslashes($username);
$password=stripslashes($password);

$email=mysqli_real_escape_string($db,$email);
$username=mysqli_real_escape_string($db,$username);
$password=mysqli_real_escape_string($db,$password);

$query = "SELECT * FROM user WHERE email='$email'";
$result = mysqli_query($db,$query);

if($result && mysqli_num_rows($result) > 0 )
{
echo "Account already exists.Please login";
}
else{
$sql="INSERT INTO user (ID,email,username,password) VALUES   
(NULL,'$email','$username','$password')";
if($sql)
{
echo "Account created successfully.";

}
else
{
echo "Error";

}
}
}
}
?>

您没有执行插入查询,它应该如下所示:

$sql="INSERT INTO user (ID,email,username,password) VALUES   
(NULL,'$email','$username','$password')";
$sql= mysqli_query($db,$sql); ///You are missing this

更改自:

$sql="INSERT INTO user (ID,email,username,password) VALUES   
(NULL,'$email','$username','$password')";
if($sql)
{
echo "Account created successfully.";
}

到:

$sql="INSERT INTO user (ID,email,username,password) VALUES   
(NULL,'$email','$username','$password')";
if(mysqli_query($db,$sql))
{
echo "Account created successfully.";
}

您需要执行第二个查询 ( $sql )

$sql="INSERT INTO user (email,username,password) VALUES   
('$email','$username','$password')";
if(mysqli_query($db,$sql))
{
    echo "Account created successfully.";
}
  • 删除不需要的null INSERT 值,如果自动增量索引应该自动生成。

  • 执行$sql语句 aa MySQLi_query 然后在 IF 语句中使用它的结果。


奖励:使用 mysqli_error($db) 来反馈你会遇到的错误,例如:

mysqli_query($db,$sql) or die("error: ".mysqli_error($db));

暂无
暂无

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

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