我使用以下PHP代码将数据存储在我的MySQL数据库中,一切都很完美,但我想建立一个检查;如果电子邮件已存在于数据库中,则重定向到另一个页面。 (谈到PHP,我是新手)
<?php
if(empty($_POST['name']))
{} else {
define('DB_NAME', 'dbname');
define('DB_USER', 'dbuser');
define('DB_PASSWORD', 'dbpass');
define('DB_HOST', 'host');
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
if (!$link) { die('could not connect: ' . mysql_error()); }
$db_selected = mysql_select_db(DB_NAME, $link);
if (!$db_selected) { die('can not use ' . DB_NAME . ': ' . mysql_error()); }
$sql="INSERT INTO game (name, lastname, company, email, time) VALUES
('".$_POST['name']."','".$_POST['lastname']."','".$_POST['company']."','".$_POST['email']."','".$_POST['time']."')";
if (!mysql_query($sql)) { die('Error: ' . mysql_error()); }
mysql_close();
}
?>
答案 0 :(得分:3)
if(!filter_var($_POST['email'], FILTER_VALIDATE_EMAIL)) {
exit('Invalid email address'); // Use your own error handling ;)
}
$select = mysqli_query($connectionID, "SELECT `email` FROM `game` WHERE `email` = '".$_POST['email']."'") or exit(mysqli_error($connectionID));
if(mysqli_num_rows($select)) {
exit('This email is already being used');
}
坚持上面插入查询
答案 1 :(得分:0)
您可以使用 on Duplicate查询。
答案 2 :(得分:0)
首先,问你的问题。最简单的方法是使用header()
函数重定向到页面。
if ( !$email) {
header('Location: http://example.com/new_page.html' );
} else {
// continue with code
}
其次,该代码中存在很多问题。例如:
if(!empty($_POST['name'])) {