2010-03-23 77 views
0

嘿我真的很陌生,PHP和PostgreSQP或任何數據庫在這個問題。所以我不知道該怎麼做。註冊表格檢查PostgreSQL是用戶名已被採納

我需要一個if語句說。

If(the username user just typed in is already in database) { 
    my code here 
} 

變量的用戶名,只是在鍵入用戶爲$ userNameSignup

我會怎麼做,與PHP PostgreSQL的?

另外,如果他們正確完成表格,我又該如何將人員重定向到新頁面? 。

感謝 謝爾比

+1

我不想成爲一個累贅,但你真正建設一個登錄/用戶註冊規劃(閱讀:安全)系統*不知道你使用的任何工具*也許從簡單的事情開始就是個好主意。只是在說'。 – Tomalak 2010-03-23 00:26:47

+0

實際上我的表格完成了95%,除了我所要求的內容外沒有任何錯誤。我想學習PHP的真實生活應用程序,所以我將跳轉到實際使用它的目的。登錄...我不在乎我的大腦是否會爆炸,我需要10年時間才能發現。我需要知道並且需要學習。但越快越好,到目前爲止,這是我個人學習最快的方式 – MrEnder 2010-03-23 00:34:19

+0

以及我並不陌生編程我只是服務器端編程的新手。 – MrEnder 2010-03-23 00:36:37

回答

1
ini_set('error_reporting', E_ALL); 
    ini_set('display_errors', 1); 

    $result = pg_query('SELECT 1 FROM logins WHERE LOWER(userName)=\''.strtolower(pg_escape_string($userNameSignup)).'\'') or exit(pg_last_error()); 

    if (pg_num_rows($result)) { 

     $userNameSignupError = 'Username already taken please choose a new one.'; 
    } 

終於想通了^^

+2

使用$ result = pg_query_params('SELECT 1 FROM logins WHERE lower(username)= $ 1',array($ userNameSignup))你會更好,它會更快,更容易受到導致安全問題的小錯誤的影響。 – 2010-03-23 07:27:02

+0

我試過了,它似乎不工作,可能我用它錯了... – MrEnder 2010-03-24 03:23:50

+0

此外,我強烈建議你看看PDO:http://php.net/pdo – 2010-08-04 00:20:50

相關問題