【问题标题】:Drupal - Validate form before submit / Encrypt password before send itDrupal - 在提交之前验证表单/在发送之前加密密码
【发布时间】:2013-04-09 22:19:27
【问题描述】:

我想在 Drupal 中修改(加密)登录密码,然后再将其发送到服务器。我没有找到任何模块可以做到这一点(提交前验证),并且我找不到在将字段发送到服务器之前验证字段的方法。

有办法解决吗?

谢谢!

【问题讨论】:

    标签: php drupal drupal-7 drupal-6 drupal-fapi


    【解决方案1】:

    这个模块会帮助你Encryption

    【讨论】:

      【解决方案2】:

      创建您的自定义模块并使用hook_form_alter 添加新的自定义验证和提交回调:

      function YOUR_MODULE_form_alter(&$form, &$form_state, $form_id)
      {
          if($form_id == "user_profile_form") {
              $form['#validate'][] = 'your_new_validation_callback';
              $form['#submit'][] = 'your_new_submission_callback';
          }
      }
      
      function your_new_validation_callback($form, &$form_state)
      {
          // add your validation logic
      }
      
      function your_new_submission_callback($form, &$form_state)
      {
          // add your submission logic
      }
      

      希望这会有所帮助。

      【讨论】:

      • 嗨!但是我需要“在”它从客户端发送到服务器端之前进行验证。这样就行不通了吧?谢谢!
      • 这就是验证的全部目的。它被称为before提交。如果出现问题,您可以使用form_set_error 针对表单元素提交错误。在这种情况下,您的提交功能未达到。
      • 就http流量而言,操作是正确的:这种方式不会改变从浏览器发送到服务器的数据。只有当数据以 HTTP POST 请求的形式到达服务器时,验证才会启动。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-07-27
      • 2015-03-08
      • 1970-01-01
      • 2016-12-30
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多