带有Jquery表单验证插件的Wordpress中的PHP验证码

时间:2019-02-21 16:40:24

标签: javascript php jquery wordpress

也许这是一个重复的问题,但是我没有找到适当的答案;他们中的大多数都依赖于插件和Bootstrap网站。我制作了一个自定义联系表单,该表单通过带有Jquery表单验证插件的AJAX发送HTML电子邮件模板,效果很好!验证工作正常;但是我有一个完成任务的问题;我需要比较是否在字段中输入的值是php验证码提供的值。或者是否有其他解决方案可以检查或限制Jquery或Javascript中的正确值。这是我的表单验证:

  // form validation
        $('#contact_form').validate({

          onkeyup: false,
          onclick: false,
          debug: true,

              rules:{
                fullname:{
                  required :true,

                },
                email:{
                  required :true,

                },
                subject:{
                  required :true,

                },
                message:{
                  required :true,

                },
                securitycode: {
                    required :true,
                    remote: {
                      url: '/includes/captcha/check-captcha.php',
                      // type: 'post',
                      data: {
                        capvalue: function() {
                          return $( '#captcha' ).val();
                        }
                      }
                    }
                }
              },

              messages: {
                fullname: {
                 required: '*your name is required.'
               },
               email:{
                  required: '*email is required.'

               },
               subject:{
                 required: '*subject name is required.'
               },
               message:{
                    required: '*message is required.'

               },
               securitycode: {
                     required: '*Enter the right captcha code.'

               }
             }
      });

在验证中,我对“ securitycode”字段的规则感兴趣;我无法通过某些wordpress构建函数获得正确的网址。我在控制台日志“ GET http://localhost/includes/captcha/check-captcha.php?securitycode=05c25&capvalue= 404(未找到)”上收到此错误;链接仅在“ localhost”之后缺少根站点文件夹名称;

,用于现场检查的HTML文件为:

    <div class=" captcha form-group captcha_style">
                                <input type="text" name="securitycode" id="securitycode" class=" form-control" maxlength="5">
                                <div class="button captcode">
                                    <img src="<?php bloginfo('template_url') ?>/includes/captcha/captcha.php" id="captcha" alt="Captcha"/>
                                    <span class="refresh-captcha"><i class="fa fa-refresh"></i></span>
                                </div>
                            </div>

我找到了一个片段来放入文件check-captcha.php,像这样:

<?php
if (!isset($_SESSION)) session_start();
if(strtolower($_REQUEST['securitycode']) == $_SESSION['captcha']) echo '1';
 else '0';



 ?>

任何贡献将不胜感激,谢谢!

0 个答案:

没有答案