php - 如何避免在PHP中重复

标签 php mysql sql

我是 php 新手。我现在正在创建一个类似于登录页面的简单程序。可以请你帮我做我的编码,我有一个名为 user 的 mysql 表,它有 3 列用户 ID、电子邮件和密码。我的主要是 userid,它是一个自动增量。我怎么能有代码,即电子邮件列不应重复或没有相同的电子邮件。我已经编写了避免空字段的代码我现在不知道如何处理重复.. 这是我的示例代码:

<?php   
        if(isset($_POST['submit'])){
            $dbhost = 'localhost';
            $dbuser = 'root';
            $conn = mysql_connect($dbhost, $dbuser);
            mysql_select_db('dtr');
            if(! $conn ){
                die('Could not connect: ' . mysql_error());
            }

            if(! get_magic_quotes_gpc() ){
                $email = addslashes ($_POST['email']);
                $password = addslashes ($_POST['password']);
            }
            else{
                $email = $_POST['email'];
                $password = $_POST['password'];
            }   
                //validation
            if($email == ''){
                echo "empty ang email" ?></br><?php ;
                return false;
            }   
            if($password == ''){
                echo "kailangan may password ka\n" ?></br><?php ;
                return false;
            }
---------------------->//select * table where username=user
            {   
        $sql = "INSERT INTO user "."(email, password) "."VALUES('$email','$password')";
        $retval = mysql_query( $sql, $conn );
            }
            if(! $retval ){
                die('Could not enter data: ' . mysql_error());
            }
                echo "Entered data successfully\n";
                mysql_close($conn);
        }
            else
                {
            }
    ?>

请帮帮我..

最佳答案

你可以试试:

$sql = "SELECT userid from users WHERE email = ". $_POST["email"];
if (mysql_num_rows(mysql_query($sql, $con)) >= 1)
{
    echo "That email you provided seems to be already used";
    return;
}

并且请注意使用不同的数据库扩展,因为从 PHP V.5.5 开始不推荐使用 mysql。它将通过绑定(bind)和准备好的语句为您提供更好的安全功能。

关于php - 如何避免在PHP中重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21593460/

相关文章:

php - Websockets 控制用户访问

php - 是否有标准的 DSN 格式?

PHP 使用 try-catch 进行多个数据库查询

php - 我的页面浏览量计数器在主页上增加了 1 个单位,但在二级页面上增加了 3 个单位

mysql - 如何通过查看数据库中的角色列以经理或员工身份登录?

java - 如何使用 Java Applet 连接到 AWS EC2 上的 mysql 服务器?

php - PhalconPHP 中的大进程

asp.net - SQL Server - 数据库问题

php - 如何使表格将相同的列打印到一行中?

java - Hibernate OneToMany 与 OrderBy 生成无效 SQL