2016-09-07 130 views
-3

我想建立登錄系統,PHP,如果在wp_users表用戶名,電子郵件或電話號碼登錄系統在PHP

用戶輸入用戶名或電子郵件或電話號碼和密碼,然後用戶登錄成功

領域的用戶名電子郵件地址和密碼

和電話號碼是wp_metauser表 如果用戶輸入電話號碼,然後匹配meta_key= phone_nometa_value=674637388273

 field  value   comments    table 
OR email  =674637388273       wp_users 
OR username =674637388273       wp_users 
OR meta_value =674637388273 if phone no then   wp_metauser 
And meta_value = 'phone_no'  //is string    wp_metauser 
AND Password =********         wp_users 

我有一個查詢,但顯示錯誤

$query = "select * from wp_users where (user_login='$email' OR user_email = '$email' OR 'select * from wp_usermeta where meta_key='phone_no' and meta_value='$email'') and user_pass='$password'"; 
+3

你應該告訴我們錯誤是什麼。一眼就看出''email'''是錯誤的。你也應該閱讀表連接。 –

回答

-1

請看到的例子內的w3school.com

SELECT column_name(s) 
FROM table1 
JOIN table2 
ON table1.column_name=table2.column_name; 
1

連接查詢你寫你是錯誤的。

因爲你不能在where子句中選擇。

嘗試使用此代替。

select a.* 
from wp_users a 
join wp_usermeta b 
where (a.user_login='$email' OR a.user_email = '$email' OR (b.meta_key='phone_no' and b.meta_value='$email')) and a.user_pass='$password'; 
+0

非常感謝很好的答案 –

相關問題