0

我正在尝试创建自定义模式注册表单,但在验证表单时遇到了困难。基本上,我设法做的是使用 CSS3 根据标签中使用的pattern="..."orrequired标记来验证字段<input>

此验证涵盖简单的内容,例如检查密码的最小值。字符和电子邮件地址语法。但是,缺少并且非常重要的是表单与数据库一起检查以查看新用户想要注册的电子邮件地址是否已在网站上注册......如果是则触发<i class="icon-attention invalid"></i>显示如果可能的话,禁用提交按钮。

<div class="modal modal-animate" id="login">
<div class="modal-content">
    <section id="modal-register" class="hidden">
            <h4>Sign up for a new account</h4>
            <form enctype="multipart/form-data" method="post" class="frm-show-form " id="form_registration">
            <ul>
              <input type="hidden" name="frm_action" value="create">
              <input type="hidden" name="form_id" value="10">
              <input type="hidden" name="form_key" value="registration">
              <li class="field">
                 <input type="text" id="field_first_name" class="input" name="item_meta[85]" value="" placeholder="First Name" required><i class="icon-check valid"></i><i class="icon-attention invalid"></i>
              </li>
              <li class="field">
                 <input type="text" id="field_last_name" class="input" name="item_meta[86]" value="" placeholder="Last Name" required><i class="icon-check valid"></i><i class="icon-attention invalid"></i>
             </li>
             <li class="field">
                 <input type="email" id="field_email_address" class="input" name="item_meta[87]" value="" placeholder="Email" required><i class="icon-check valid"></i><i class="icon-attention invalid"></i>
             </li>
             <li class="field">
                 <input type="password" id="field_password" class="input" name="item_meta[88]" value="" placeholder="Password" pattern=".{6,}" required><i class="icon-check valid"></i><i class="icon-attention invalid"></i>
             </li>
             <input type="hidden" id="field_r5tog4" name="item_meta[89]" value="" />
             <input type="hidden" name="item_key" value="" />
             <input type="hidden" name="frm_register[username]" value="-1" />
             <input type="hidden" name="frm_register[email]" value="87" />
           </ul>
           <input type="submit" value="Register" formnovalidate="formnovalidate" class="button-full">
           </form>
    </section>
</div>
</div>

是否有一些 PHP 脚本可用于帮助验证,还是整个表单有误?我已经尝试过测试它并且用户注册有效,但如果电子邮件被接收,页面只会刷新而不注册任何内容。如果它是正在使用的有效新电子邮件,则注册有效。

4

1 回答 1

0

您可以从数组中的用户表中获取电子邮件地址,然后使用 php "in_array()" 函数搜索提供的电子邮件。

使用它从用户表中获取所有电子邮件。http://codex.wordpress.org/Class_Reference/wpdb

您将不得不使用一些 php 编码,但如果您不熟悉编程。只需使用一些插件。

于 2013-08-29T13:29:50.883 回答