我想在驗證碼驗證碼中創建簡單的聯繫表單。但事實證明,實現驗證碼不在我的聯盟中。簡單的PHP驗證碼聯繫表格
我在stackoverflow上發現了一個簡單的答案類似的問題,推動我離結尾更近了一步,但是我又陷入了困境。
所以我需要一個聯繫表格,只檢查是否輸入文本,如果正確的captcha被回答,電子郵件是不是強制性的。
</br>
<?php
\t \t \t \t $a=rand(2,9);
\t \t \t \t $b=rand(2,9);
\t \t \t \t $c=$a+$b;
\t if (isset($_POST['contact_text']) && isset($_POST['contact_email'])) {
\t \t $contact_text = $_POST['contact_text'];
\t \t $contact_email = $_POST['contact_email'];
\t \t $recaptcha = $_POST['recaptcha'];
\t \t
\t \t $info = 'Pranešimas apie korupciją: ';
\t \t $sender = 'Atsiuntė: ';
\t \t \t
\t \t if (!empty($contact_text) && ($recaptcha == $c)) {
\t \t \t \t
\t \t echo $recaptcha;
\t \t
\t \t $to = '[email protected]';
\t \t $subject = 'Korupcija';
\t \t $body = $sender."\n".$contact_email."\n".$info."\n".$contact_text;
\t \t $headers = 'From: '.$contact_email;
\t \t
\t \t
\t \t if (@mail($to,$subject, $body, $headers)) {
\t \t \t echo 'Jūsų pranešimas sėkmingai išsiustas. ';
\t \t \t
\t \t } else {
\t \t } echo 'Įvyko klaida, bandykite dar karta.';
\t \t \t
\t \t } else {
\t \t \t echo 'Neteisingai užpildyta forma.';
\t \t \t } \t
\t }
?>
<form action="contact1.php" method="post">
\t Pranešimas apie korupciją:<br><textarea name="contact_text" rows="6" cols="30" maxlength="1000" ></textarea><br><br> <!-- -->
\t Email (nebūtinas):<br><input type="text" name="contact_email" maxlength="30">
<?php echo $a."+".$b."="?><input type="number" name="recaptcha" maxlength="2" style="width:40px" />
<input type="submit" value="Siusti">
<br>
</form>
現在的問題是,我總是得到那個細節是不正確的消息。我試圖回聲recaptcha只是爲了看看$ c是否正確,它的工作原理。但由於某種原因,無法比較$ recaptcha與$ c或其他問題,我不確定。