У нас есть система регистрации, которую мы используем, когда люди заполняют форму, и их информация помещается в нашу базу данных SQL.Однако у нас нет системы для проверки дубликатов регистраций, и я надеюсь получить некоторые рекомендации о том, как проверить, может быть, имя или адрес электронной почты и установить ошибку.
Вот наши настройки ошибоккод (один пример, у нас есть несколько проверок):
<cfif not len(trim(form.last_name)) or form.last_name eq "Last Name">
<cfset errors = errors & "<li>You must include your complete last name.</li>">
</cfif>
Если ошибок не найдено, вот код запроса для вставки данных в базу данных:
<cfquery name="InsRegistrant" datasource="#application.Datasource#" dbtype="odbc">
INSERT INTO Schedule_Registrations(
schedule_id,
first_name,
last_name,
phone_number,
email,
guest,
list_type,
datetime_registered
)
VALUES(
#url.schedule_id#,
<cfqueryparam cfsqltype="cf_sql_varchar" value="#FORM.first_name#">,
<cfqueryparam cfsqltype="cf_sql_varchar" value="#FORM.last_name#">,
<cfqueryparam cfsqltype="cf_sql_varchar" value="#CleanPhoneNumber#">,
<cfqueryparam cfsqltype="cf_sql_varchar" value="#FORM.email#">,
#attendee.guest#,
<!--- Values for list types
0 = NEVER USE Will cause many many problems
1 = Main List
2 = Waiting List --->
#attendee.list_type#,
#createodbcdatetime(now())#
)
</cfquery>
Там нет«уникальный» идентификатор привязан к конкретному человеку, поэтому я думаю, что лучший способ - это запретить регистрацию, которая соответствует кому-либо с идентичным именем / фамилией или даже только адресом электронной почты.Любые идеи о том, как реализовать такую функцию с использованием вышеуказанной системы, были бы полезны.