【问题标题】:Using checkdnsrr with CodeIgniter "Form validation"将 checkdnsrr 与 CodeIgniter “表单验证”一起使用
【发布时间】:2016-01-27 22:30:16
【问题描述】:

有没有一种简单快捷的方法可以在我的 Controller 中使用 checkdnsrr 作为表单验证过程的一部分?我想检查用户提交的域是否存在 DNS-A 记录。我确实在文档中查找了一些有用的东西,但是我找不到任何东西。

这是我目前的表单验证

    $this->form_validation->set_rules('campaign_package', 'Valg av tjeneste', 'required');
    $this->form_validation->set_rules('campaign_domain', 'Nettadresse', 'required');

【问题讨论】:

    标签: php codeigniter validation


    【解决方案1】:

    好吧,经过一番阅读,我最终自己提出了一个解决方案。

    这是对常规表单验证库的扩展,因此需要加载任何内容。我刚刚在库文件夹中创建了一个名为“MY_Form_validation.php”的库(请务必根据自己的配置更改前缀),然后使用以下代码。

    <?php if (!defined('BASEPATH')) exit('No direct script access allowed');
        class MY_Form_validation extends CI_Form_validation {
    
            function validate_dns($str) {
                    $this->CI->form_validation->set_message('validate_dns', 'Domenet er ugyldig, utilgjengelig eller inneholder feilaktige DNS-innstillinger.');
                    if(checkdnsrr($str, 'A'))
                    {
                        return TRUE;
                    }
                    else
                    {
                        return FALSE;
                    }
                }
            }
    ?>
    

    以及验证

    $this->form_validation->set_rules('campaign_domain', 'Nettadresse', 'required|validate_dns');
    

    像魅力一样工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-02-23
      • 2013-07-20
      • 2012-07-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多