2014-06-05 133 views
0

我試圖在註冊表中應用最後的潤色。我想根據他的電子郵件地址來檢查用戶是否已經擁有一個帳戶。但是,PHP不會幫助我。這是我的代碼的主要部分。檢查用戶是否已經擁有PHP和ORACLE的帳戶

$s = oci_parse($conn, "SELECT * FROM users WHERE mail='&mail'"); 
    oci_execute($s); 
    $rows = 0; 
    while (oci_fetch($s)) 
    { 
     $rows ++ ; 
    } 
    echo $rows; -> this echos all the time 0 even if I have 10+ registered users with same email 
    if($rows > 0) 
    { 
     //has account 
    } 
    else{ 

     doesn't have account, inserting into DB 
    } 

看來$行的值總是0,不管我做什麼。我也試過

SELECT COUNT(*) FROM users WHERE mail='$mail' 

但我無法將正確的值傳遞給$ rows變量。

其他一切工作正常我的PHP代碼。 在此先感謝

+0

你寫的第一個代碼:mail ='&mail'但是一個變量會被寫入$ mail like它在你的第二個代碼(sql語句)中,如果我沒有記錯的話,你必須使用。$ mail。如果你使用「」insted of' – Baalthasarr

+0

這樣的話,你可以用點來將字符串與變量聯繫起來。「這對我來說很愚蠢。這是因爲第一次選擇時的&符號。非常感謝 – KupiKupi

回答

0

錯誤來自你寫的sql語句&郵件insted $ mail。 順便說一句,你可以使用功能oci_num_rows($s)這個功能,你不必使用while循環

相關問題