PHP/MySQL检查是否存在值,如果不存在则插入

t0m*_*mgs 1 php mysql

之前我曾问过,但无法弄明白.

我有这样的形式:

<?php
if ( isset ($_REQUEST['fname']{0}, $_REQUEST['lname']{0}, $_REQUEST['mail']{0}, $_REQUEST['url']{0}) ){
   $query = "INSERT INTO table1 (url, fname, lname, mail) VALUES ('".$_REQUEST[url]."', '".$_REQUEST[fname]."', '".$_REQUEST[lname]."', '".$_REQUEST[mail]."')"; 
$result = mysql_query($query)
or die ("Query Failed: " . mysql_error());
}
else{
   echo "One Of The Values Not Entered Correctly. Please Press Back In Your Browser And Enter The Missing Values.";
}
?>
Run Code Online (Sandbox Code Playgroud)

我想知道它是否有可能在再次输入之前检查系统中是否存在URL.

mda*_*rwi 5

查看MySQL INSERT ... ON DUPLICATE KEY UPDATE,如果在数据库中将URL设置为唯一,则可以使用它.

此外,您应该确保在插入之前清理输入:http://php.net/manual/en/function.mysql-real-escape-string.php