我想在验证码验证码中创建简单的联系表单。但事实证明,实现验证码不在我的联盟中。简单的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或其他问题,我不确定。