Php Mysql-使用empty命令检查变量重复

Php Mysql-使用empty命令检查变量重复,php,mysqli,Php,Mysqli,我的网页中有用户添加表单 像这样的代码 if(isset($_POST['submitted']) ==1) { $name = mysqli_real_escape_string($dbc, $_POST['name']); $surname = mysqli_real_escape_string($dbc, $_POST['surname']); $date = mysqli_real_escape_string($dbc, $_POST['

我的网页中有用户添加表单

像这样的代码

if(isset($_POST['submitted']) ==1) {

        $name = mysqli_real_escape_string($dbc, $_POST['name']);
        $surname = mysqli_real_escape_string($dbc, $_POST['surname']);
        $date = mysqli_real_escape_string($dbc, $_POST['date']);
        $email = mysqli_real_escape_string($dbc, $_POST['email']);
        $password = mysqli_real_escape_string($dbc, $_POST['password']);
        $city = mysqli_real_escape_string($dbc, $_POST['city']);

        $q = "INSERT INTO users (name, surname, date, email, password, city) VALUES('$name', '$surname', '$date', '$email', '$password', '$city')";
        $r = mysqli_query($dbc, $q); 


    if($r) {
        $message = 'User was added';
    }else{
        $message = 'User could not be added because: '.mysqli_error($dbc);
        $message .= '<p>'.$q.'</p>';
        }
    }
if(isset($\u POST['submitted'])==1){
$name=mysqli\u real\u escape\u字符串($dbc,$\u POST['name']);
$LANSAME=mysqli\u real\u escape\u字符串($dbc,$\u POST['姓氏]);
$date=mysqli\u real\u escape\u字符串($dbc,$\u POST['date']);
$email=mysqli\u real\u escape\u字符串($dbc,$\u POST['email']);
$password=mysqli\u real\u escape\u字符串($dbc,$\u POST['password']);
$city=mysqli\u real\u escape\u字符串($dbc,$\u POST['city']);
$q=“在用户(姓名、姓氏、日期、电子邮件、密码、城市)中插入值(“$name”、“$姓氏”、“$date”、“$email”、“$password”、“$city”)”;
$r=mysqli_查询($dbc,$q);
如果($r){
$message='User was added';
}否则{
$message='无法添加用户,因为:'.mysqli_错误($dbc);
$message.=''.$q.

'; } }
我的提交按钮是:

<button type="submit" class="btn btn-default">Add User</button>
<?php if(isset($message)) { echo $message; }?>
<input type="hidden" name="submitted" value="1">
添加用户
我想用post按钮检查数据库表中的现有值。
我如何在这篇文章中检查相同的值

您可以这样做:

<?php
if (isset($_POST['submitted']) == 1) {

    $name = mysqli_real_escape_string($dbc, $_POST['name']);
    $surname = mysqli_real_escape_string($dbc, $_POST['surname']);
    $date = mysqli_real_escape_string($dbc, $_POST['date']);
    $email = mysqli_real_escape_string($dbc, $_POST['email']);
    $password = mysqli_real_escape_string($dbc, $_POST['password']);
    $city = mysqli_real_escape_string($dbc, $_POST['city']);

    $q = "SELECT * FROM users WHERE email='".$email."'";
    $r = mysqli_query($dbc, $q);

    if ($r->num_rows == 0) {
        $q = "INSERT INTO users (name, surname, date, email, password, city) VALUES('$name', '$surname', '$date', '$email', '$password', '$city')";
        $r = mysqli_query($dbc, $q);

        if ($r) {
            $message = 'User was added';
        } else {
            $message = 'User could not be added because: ' . mysqli_error($dbc);
            $message .= '<p>' . $q . '</p>';
        }
    } else {
        $message = "Email does exist already";
    }
}

您可以执行以下操作:

<?php
if (isset($_POST['submitted']) == 1) {

    $name = mysqli_real_escape_string($dbc, $_POST['name']);
    $surname = mysqli_real_escape_string($dbc, $_POST['surname']);
    $date = mysqli_real_escape_string($dbc, $_POST['date']);
    $email = mysqli_real_escape_string($dbc, $_POST['email']);
    $password = mysqli_real_escape_string($dbc, $_POST['password']);
    $city = mysqli_real_escape_string($dbc, $_POST['city']);

    $q = "SELECT * FROM users WHERE email='".$email."'";
    $r = mysqli_query($dbc, $q);

    if ($r->num_rows == 0) {
        $q = "INSERT INTO users (name, surname, date, email, password, city) VALUES('$name', '$surname', '$date', '$email', '$password', '$city')";
        $r = mysqli_query($dbc, $q);

        if ($r) {
            $message = 'User was added';
        } else {
            $message = 'User could not be added because: ' . mysqli_error($dbc);
            $message .= '<p>' . $q . '</p>';
        }
    } else {
        $message = "Email does exist already";
    }
}

哪些内容不相同?添加前,使用
emailId
进行选择,如果不可用,则添加其他内容,给出已存在的消息。哪些内容不相同?添加前,使用
emailId进行选择,如果不可用,则添加其他内容,给出已存在的消息。在您选择的电子邮件中,
未定义
。。。它将给出mysql错误。@Suchit和now?您在做什么,如果
$r->num\u rows==0,您应该允许插入。请在发布前测试您的代码。在您选择的电子邮件中,
未定义
。。。它将给出mysql错误。@Suchit和now?您在做什么,如果
$r->num\u rows==0,您应该允许插入。请在发布前测试您的代码。