douru5373 2017-03-23 04:41
浏览 14
已采纳

在我的php网站上没有工作google recaptcha

I'm using bluehost as my web server. I'm trying to implement reCAPTCHA into my email form for my website, The mail is sent without passing through the recaptcha.

Below are some of the html codes.

<div class="letterbox">
    <form method="post" name="enewsform" id="enewsform" action="enewsletter_ins.php">
    <h3 class="tit2">Subscribe To Newsletter</h3>
    <div style="margin-top:10px;">
        <label class="tit2">Name 
          <input type="text" name="name" value="" /></label>
        <label class="tit2">Email Address 
          <input type="text" name="email" value="" /></label></br>
          <div class="g-recaptcha" data-sitekey="itmysitekey!!"></div>
        <input type="button" value="subscribe" class="btn_letter"  onclick="sendData(document.enewsform)" />
    </div>
    </form>
    <script type="text/javascript">
    <!--
        function sendData(f){
            if(f.name.value==""){
                alert("Required to name.");
                f.name.focus();
                return false;
            }
            if(f.email.value==""){
                alert("Required to email.");
                f.email.focus();
                return false;
            }
            if (f.email.value.search(/(\S+)@(\S+)\.(\S+)/) == -1 ) {
               alert("Not Valid Email."); 
                f.email.focus();
               return false;
            }
            f.submit();
        }
    //-->
    </script>

Below are some of the php codes.

<?
include_once $_SERVER[DOCUMENT_ROOT]."/include/initiate.php";

if(trim($name)=="" or trim($email)==""){
    alert("send errer!!");
}

$form_title=$name." 님의 Subscribe to eNewsletter 신청";
$user_name=$name;
$user_email=$email;
$body="
date : ".date("Y-m-d H:i:s")."
<hr>
Name : $name
<hr>
E-Mail : $email
";

$sql = "
        insert into prd_form_data set
            form_type = '3',
            form_title = '".$form_title."',
            user_name = '".$user_name."',
            user_email = '".$user_email."',
            user_content = '".$body."',
            insdt = now()
";
mysql_query($sql) or error(mysql_error());

//메일발송
$comments = $body;

$mailTo     =   ADMIN_MAIL; // 받는 메일 주소;
$mailFrom   =   "inquiry@example.com";  //  

$mailSubject = "Subscribe to eNewsletter";
$mailContent = $comments;

$mailHeader = "From: $mailFrom
";
$mailHeader .= "MIME-Version: 1.0
";
$mailHeader .= "Content-type: text/html; charset=utf-8
";

$mailResult = mail ($mailTo, $mailSubject, $mailContent, $mailHeader,'-f'.$mailFrom);

?>

<form method="post" action="/" name="frm">
</form>

<script type="text/javascript">
<!--
    alert("ok!!");
    document.frm.submit();
//-->
</script>
  • 写回答

1条回答 默认 最新

  • duanbinmi8970 2017-03-23 05:45
    关注

     
    function sendData(f){
      if(f.name.value==""){
    alert("Required to name.");
    f.name.focus();
    return false;
      }
      if(f.email.value==""){
    alert("Required to email.");
    f.email.focus();
    return false;
      }
      if (f.email.value.search(/(\S+)@(\S+)\.(\S+)/) == -1 ) {
       alert("Not Valid Email."); 
       f.email.focus();
       return false;
      }
      if(document.forms["enewsform"]["g-recaptcha-response"].value==""){
    alert("Please fill reCAPTCHA");
    document.forms["enewsform"]["g-recaptcha-response"].focus();
    return false;
      }
      f.submit();
     }          
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <script src="https://www.google.com/recaptcha/api.js"></script>
    
    <div class="letterbox">
        <form method="post" name="enewsform" id="enewsform" action="enewsletter_ins.php">
            <h3 class="tit2">Subscribe To Newsletter</h3>
            <div style="margin-top:10px;">
                <label class="tit2">Name
                    <input type="text" name="name" value="" />
                </label>
                <br />
                <label class="tit2">Email Address
                    <input type="text" name="email" value="" />
                </label>
                <br />
                <div class="g-recaptcha" data-sitekey="6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI"></div>
                <input type="button" value="subscribe" class="btn_letter" onclick="sendData(document.enewsform)" />
            </div>
        </form>
    </div>

    </div>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?