Невозможно получить доступ к сообщению об ошибке, соответствующему имени вашего поля Variabel1. (Запрошенное целое число) - PullRequest
0 голосов
/ 20 февраля 2019

Я новичок в CodeIgniter, и теперь я учусь на книге, чтобы сделать простой калькулятор.

У меня проблема при запуске процесса умножения, я получаю следующую ошибку и предполагаю, что проблема на контроллере

Код:

class Blog extends CI_Controller {
function __construct()
{
    parent ::__construct();
    $this->load->helper(array('url','form'));

public function index()
{
    $this->load->view("hello"); 
}
public function perkalian() 
{
    $this->load->library('form_validation'); 

    $this->form_validation->set_rules('v1','Variabel 1','requiered 
    integer');
    $this->form_validation->set_rules('v2','Variabel 2','requiered 
    integer');
if ($this->form_validation->run()) 
    {
        $data['v1'] = (int)$this->input->post('v1',true); 
        $data['v2'] = (int)$this->input->post('v2',true); 
        $data['hasil']=$data['v1']*$data['v2']; 
    }
else
    {
        $data['v1']=0;
        $data['v2']=0;
        $data['hasil']=0; }

$data['v1'] = (int)$this->input->post('v1',true);
$data['v2'] = (int)$this->input->post('v2',true);
$data['hasil']=$data['v1']*$data['v2'];
}
else
{
$data['v1']=0;
$data['v2']=0;
$data['hasil']=0;
}
$this->load->view('perkalian',$data);
}
public function pertambahan()
{
$data['v1'] = (int)$this->input->post('v1',true);
$data['v2'] = (int)$this->input->post('v2',true);
$data['hasil']=$data['v1']+$data['v2'];;
$this->load->view('pertambahan',$data);
}

Ответы [ 2 ]

0 голосов
/ 21 февраля 2019

Пожалуйста, попробуйте этот код:

public function perkalian() 
{
    $this->load->library('form_validation'); 

    $this->form_validation->set_rules('v1','Variabel 1','required|integer');//changes
    $this->form_validation->set_rules('v2','Variabel 2','required|integer');//changes

    if ($this->form_validation->run() == FALSE) //changes
    {
        if (validation_errors()) {//changes
            $data['error'] = validation_errors();//changes
        } else {//changes
            $data['error'] = '';//changes
        }

        $data['v1']= 0;
        $data['v2']= 0;
        $data['hasil']= 0;      

    }else{
        $data['v1'] = (int)$this->input->post('v1',true); 
        $data['v2'] = (int)$this->input->post('v2',true); 
        $data['hasil']=$data['v1']*$data['v2'];
        $data['error'] = '';//changes
    }
    echo'<pre>';print_r($data);die;//changes
    $this->load->view('perkalian',$data);
}
0 голосов
/ 20 февраля 2019

У вас есть синтаксическая ошибка в ваших правилах проверки

$this->form_validation->set_rules('v1','Variabel 1','requiered integer');

должно быть

// required instead of requiered and you forgot |
$this->form_validation->set_rules('v1','Variabel 1','required|integer');

Также сделайте то же самое в другой функции set_rules

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...