Php 有没有办法提醒用户插入到。。。重复的更新条目?

Php 有没有办法提醒用户插入到。。。重复的更新条目?,php,mysql,ajax,Php,Mysql,Ajax,PHP/MySql新手-我正在学习如何创建一个数据库来存储一些字符串条目 一切正常-我的表单中有三个用户条目:class、keywords、usrstring,它们毫无问题地添加到我的数据库中 但有两个问题: 1这是我正在使用的mysql函数: $sql = "INSERT INTO `reporting` (class, keywords, usrtext) VALUES (\"$class\", \"$keywords\", \"$usrtext\") ON DUPLICATE KEY U

PHP/MySql新手-我正在学习如何创建一个数据库来存储一些字符串条目

一切正常-我的表单中有三个用户条目:class、keywords、usrstring,它们毫无问题地添加到我的数据库中

但有两个问题:

1这是我正在使用的mysql函数:

$sql = "INSERT  INTO `reporting` (class, keywords, usrtext) VALUES (\"$class\", \"$keywords\", \"$usrtext\") ON DUPLICATE KEY UPDATE `usrtext` = \"$usrtext\"  ";
但是我只想在类和关键字都匹配一行的情况下更新重复的键。不是类或实例,如果类或关键字匹配,则更新行。这是实现和实例的正确语法吗

2我通过一个ajax帖子发送表单数据,该帖子重新定向回主索引页,如下所示:

$("#formdata").submit(function(e) {

    var url = "posted.php"; // the script where you handle the form input.
    e.preventDefault(); // avoid to execute the actual submit of the form.

    $.ajax({
           type: "POST",
           url: url,
           data: $("#formdata").serialize(), // serializes the form's elements.
           success: function(data)
           {
             window.location.href = 'index.php?=successfullyadded';
             alert(data) ;
             $("#formdata")[0].reset(); // reset form and clear all hidden inputs

       }
         });

});

如何中断在原始表单页面上创建警报/提示的过程,以便通知用户重复条目,并且提供了继续更新条目以取消的选项,让他们有机会在条目完成之前更改类别或关键字?

我的代码用于当用户使用已注册的电子邮件注册时发出警告消息。当电子邮件重复时发出警报

$sql=mysql\u querySELECT*FROM admin,其中email='$email'; $numrow=mysql\u num\u rows$sql

        if($numrow > 0){


        echo '<script type="text/javascript">alert("That Email is already exits !!Try another Email");
        history.back();</script>';

        }
        else{

            $staffInsert_sql = mysql_query("Insert Into admin(name,gender,password,confirmpw,email,address,reg_date)
                VALUES ('$Name','$gender','$password','$confirmpw','$Email','$Address',now()
                )");
            if ($staffInsert_sql) {
                echo "<script language=\"javascript\"> alert('Save Successfully One Record');</script>";
                header("location:success_register.php");
            }
        } 

警告:如果你只是在学习PHP,请不要学习过时的界面。这很糟糕,已经在PHP7中删除了。替换类和指南类有助于解释最佳实践。确保你的用户参数是正确的,否则你会得到严重的后果。所以你会在类上有一个复合键,关键字,对吗?当然,在一个正常化的环境中,你永远不会有一个名为keywords@tadman-谢谢您的警告和参考。我确实在使用mysqli,并且读过关于使用字符转义正确清除输入的文章,尽管许多人似乎暗示字符转义是不够的。到目前为止,我只在xampp localhost环境中练习以确保安全。@草莓-是的,如果类和关键字都被复制,我将有一个复合键要更新,只有usrstring列会得到更新。我认为,如果类或关键字重复,我的$sql语法将更新……如果您使用mysqli,请使用准备好的语句并绑定数据。这是最安全的方法,不需要做很多工作?在您的查询中,如果您正确定义了类型,那么它将成为一个总是正确转义的值,但这通常是显而易见的,而且很简单。