Проверьте, если адрес электронной почты уже существует, если это так, показать сообщение, если нет, то добавить в таблицу - PullRequest
4 голосов
/ 03 июня 2010

Я надеялся немного разобраться в этом.

У меня есть форма для сбора имени, фамилии, города, штата и адреса электронной почты.Эта форма использует плагин проверки jquery и плагин формы.

Я хотел бы проверить, существует ли уже электронная почта ... если так, тогда выложите сообщение, которое сообщит им, что они уже существуют.

Это то, что у меня есть для моего скрипта update.php, в котором используется форма для добавления имен в базу данных mysql:

<?php
$con = mysql_connect("host","username","password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}

mysql_select_db("table", $con);

$sql="INSERT INTO wallnames (ID, firstname, lastname, city, state, email)
 VALUES('NULL','$_POST[firstname]','$_POST[lastname]','$_POST[city]','$_POST[state]','$_POST[email]')";

if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
 }

 echo "<p style=\width:350px; height:200px; vertical-align:middle;\><strong>Thank you for adding your info</strong></p>";

mysql_close($con);
?>

1 Ответ

4 голосов
/ 03 июня 2010

Вам следует создать уникальный индекс для столбца электронного письма, тогда вставка завершится неудачно, если вы попытаетесь вставить одно и то же электронное письмо дважды.

CREATE UNIQUE INDEX ux_wallnames_email ON wallnames (email)

Вы также можете выполнить этот запрос, чтобы проверить, существует ли уже электронное письмо:

SELECT EXISTS (SELECT NULL FROM wallnames WHERE email = 'test@example.com')

Он вернет либо 0, если электронное письмо не используется, либо 1, если оно уже существует в таблице.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...