我已經看過周圍的主板,但沒有完整的答案,我可以找到。我使用PHP和MySQL來創建和管理志願者註冊表單。防止重複的電子郵件地址在PHP註冊形式
我需要確保沒有重複的電子郵件地址(電子郵件鍵是唯一的)
這是我的工作的代碼,但是我需要幫助理解哪裏放功能我m也使用check_input去除斜槓等
結果是使用重複電子郵件的測試條目不會發布到數據庫,但是在流程頁面上它仍然給用戶確認而不是錯誤。
下面的代碼是process.php頁面上,數據庫連接PHP和插入代碼之後:
<?php
function createUser($email)
{
$sql = "SELECT * FROM vols2012 WHERE email='$email'" ;
$result = mysql_query($sql) ;
if(mysql_num_rows($result) > 0)
{
die("There is already a user with that email!") ;
}//end if
function check_input($data, $problem='')
{
$data = trim($data);
$data = stripslashes($data);
$data = htmlspecialchars($data);
if ($problem && strlen($data) == 0)
{
show_error($problem);
}
return $data;
}
function show_error($myError)
{
}
?>
check_input()是毫無意義的,驗證地址,然後根據db連接器使用適當的衛生設施。 – 2012-02-28 02:06:02
check_input是爲了防止MySQL注入 - 有哪些選擇? – AAAndreAAA 2012-02-28 02:07:25
這似乎有點不清楚。我們可以假設$ data是來自表單的輸入文本字段的原始POST嗎?當你說你不知道把「功能」放在哪裏,那是什麼? createUser()函數當前不創建任何東西。當整個設置有點模糊時,很難回答。 – 2012-02-28 02:08:21