6 ต.ค. 2556

การ Submit form ของ yii

ทำฟอรฺ์มมา submit แล้ว ฟอร์มมันไม่ submit สักที หานานมากว่าติด bug ตรงไหน ลองอยู่หลายวิธี ปราฏกว่าได้แล้ว
Db หน้าตาแบบนี้






ส่วน rules ใน model

 public function rules() {
        return array(
            //array('intro, howto, hope', 'filter', 'filter' => array($obj = new CHtmlPurifier(), 'purify')),
            array('firsttest, final', 'required', 'message' => 'กรุณาป้อนจำนวนข้อ 10 - 100'),
            array('firsttest, final subject_id', 'numerical',
                'integerOnly' => true,
                'min' => 10,
                'max' => 99,
                'tooSmall' => 'จำนวนข้อสอบไม่น้อยกว่า 10 ข้อ',
                'tooBig' => 'จำนวนข้อสอบสูงสุดไม่เกิน 100 ข้อ',
                'message' => 'ป้อนเฉพาะตัวเลข'
                ),
        );
    }




ตอนแรกเอา subject_id ไปรวมอยู่ด้วยกัน กับ firsttest และ final   โดยที่ type ของ subject_id ใน database เป็น int(11)    ส่วนของ firsttest และ final  เป็น int(2)   ทำยังก็ submit ไม่ได้ จนแยก rules ของ subject_id และ firsttest, final อยู่กันคนละ rules จึงสามารถ submit form ได้
แบบว่าใหม่มากสำหรับ yii ทำไปศึกษาไป  กว่าจะหาสาเหตุได้ ปวดหัวอยู่ 2 วัน
 public function rules() {
        return array(
            //array('intro, howto, hope', 'filter', 'filter' => array($obj = new CHtmlPurifier(), 'purify')),
            array('firsttest, final', 'required', 'message' => 'กรุณาป้อนจำนวนข้อ 10 - 100'),
            array('subject_id', 'numerical'),
            array('firsttest, final', 'numerical',
                'integerOnly' => true,
                'min' => 10,
                'max' => 99,
                'tooSmall' => 'จำนวนข้อสอบไม่น้อยกว่า 10 ข้อ',
                'tooBig' => 'จำนวนข้อสอบสูงสุดไม่เกิน 100 ข้อ',
                'message' => 'ป้อนเฉพาะตัวเลข'
                ),
        );
    }

ไม่มีความคิดเห็น: