2017-06-14 142 views
0

所以這是我的第一篇文章,所以請原諒我的質量。無法讓PHP FILTER_VALIDATE_EMAIL工作

我一直在努力尋找如何使此代碼工作

<?php 
$email = isset($_POST["email"]); 
if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { 
?> 
//html 
<?php } ?> 

它總是得到「不正確的電子郵件格式」消息,即使它是一個正確的電子郵件地址。

任何想法? 謝謝。

+0

硬編碼的電子郵件,並檢查天氣它的工作或沒有'' – Sundar

+0

還可以使用這個註釋來檢查你的輸入參數'<?php var_dump($ _ POST);有時候你可能拼錯了輸入參數名稱 – Sundar

回答

3

你的問題是這樣的一行:

$email = isset($_POST["email"]); 

isset()函數返回TRUE或FALSE,並且您存儲該布爾結果在$電子郵件變量,這顯然不是一個電子郵件。你大概意思是這樣的:

$email = $_POST["email"] ?? '<value if not set>'; //php7 only 

或...

$email = isset($_POST["email"]) ? $_POST["email"] : '<value if not set>'; 
+0

你的第二個命題對我來說完美無缺!非常感謝。我剛剛開始使用php,但我不知道它是一個布爾值,我沒有正確閱讀 - 「無論如何,再次感謝 –

+0

不用擔心,如果我的答案解決了您的問題,請單擊兩個投票按鈕下的綠色複選標記以標記爲 – Enstage

+0

哈哈我必須等待一分鐘它不會接受 –