希望有人可以幫助..我有小部件顯示爲無captcha recaptcha,我已經找到了一個在互聯網上的代碼,我試圖使用,因爲我不是很好用PHP但它似乎只能部分工作。每當我點擊框或我不,我試圖發送一封電子郵件說,請檢查驗證碼。谷歌沒有captcha recaptcha無法正常工作
這是我在我的郵件confirm.php文件,該文件是在服務器端(我不認爲那裏有需要發佈的窗口小部件的代碼,因爲它顯示和工作,這是第1步)
$email;$message;$sujet;$header;$captcha;
if(isset($_POST['email'])){
$email=$_POST['email'];
}if(isset($_POST['message'])){
$email=$_POST['message'];
}if(isset($_POST['sujet'])){
$email=$_POST['sujet'];
}if(isset($_POST['header'])){
$email=$_POST['header'];
}if(isset($_POST['g-recaptcha-response'])){
$captcha=$_POST['g-recaptcha-response'];
}
if(!$captcha){
echo '<h2>Please check the the captcha form.</h2>';
exit;
}
$response=file_get_contents("https://www.google.com/recaptcha/api/siteverify?secret=6LcIAgETAAAAAEjbARzUsrkgBIHAeE8QmsNE3US-&response=".$captcha."&remoteip=".$_SERVER['REMOTE_ADDR']);
if($response.success==false)
{
echo '<h2>You are spammer ! Get the @$%K out</h2>';
}
else
{
echo '<h2>Thanks for posting comment.</h2>';
}
1.您沒有正確清理您的文章。這是一個嚴重的安全漏洞。 2.你如何處理電子郵件變量?如果您試圖使其成爲正文,您可以使用$ email + =繼續添加到變量的末尾。 3.當你檢查布爾類型時,在PHP $ response.success === false中使用=== – phpmeh
對於任何使用ELSE語句的愛。我不知道你在哪裏找到這個代碼,但它只是可怕的... –
即時通訊不好用的PHP,所以如果你可以建議一個解決這個,將不勝感激:) @phpmeh – Essentialz