【问题标题】:Cakephp:How to validate fields to accept a range of values for a specific entryCakephp:如何验证字段以接受特定条目的一系列值
【发布时间】:2012-06-26 17:50:24
【问题描述】:

我有一张接受等级(例如 A、B、C...)的表格,另一个接受标记(0-100)。我希望每个等级接受指定范围的标记。例如 A 必须接受任何标记范围为 75-100。

如果用户输入一个等级,它应该只接受该等级范围内的标记。我的两个字段如下。

$mygrade =array('A'=>'A','B'=>'B','C'=>'C','D'=>'D','E'=>'E','U'=>'U');
        echo $this->Form->label('Grade: ');


echo $this->Form->label('Mark(%): ');
echo $this->Form->input("ApplicantOlevelQualification.mark.$s",array('label'=>''));

请帮助我被卡住的人

【问题讨论】:

    标签: cakephp cakephp-1.3 cakephp-2.0 cakephp-2.1


    【解决方案1】:

    如果我理解您的问题是正确的,那么您正在尝试使用所选成绩来验证您的分数。

    我假设,ApplianceOlevelQualification 是您的模型。 创建模型并包含验证:

    <?php
    class ApplicantOlevelQualification extends AppModel {
        public $validate = array(
            'grade' => array(
                'notempty' => array(
                    'rule' => array('inList', array('A', 'B')),
                    'message' => 'Not in range.',
                )
            ),
            'marks' => array(
                'notempty' => array(
                    'rule' => array('validMarks'),
                    'message' => 'Marks does not meet the criteria.',
                ),
            )
        );
    
        function validMarks($check) {
            //Access $this->data and $check to compare your marks and grade..
        }
    }
    ?>
    

    希望对您有所帮助。

    【讨论】:

    • 坦克,你拯救了我的一天。
    猜你喜欢
    • 1970-01-01
    • 2017-05-24
    • 2021-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-23
    • 1970-01-01
    • 2017-03-02
    相关资源
    最近更新 更多