Средство выбора даты начальной загрузки отправляет нулевое значение на контроллер, если текущая дата установлена ​​в CodeIgniter. - PullRequest
0 голосов
/ 26 октября 2019

Мой взгляд выглядит следующим образом


<div class="col-md-12 box-header">
    <?php echo form_open('admin/Inward/showreport', 'class="form-inline" style=""');?>
        <div class="col-md-2">
           <input id="date_1" value="<?php $from= $this->input->post('from');if($from){echo $from;}else{echo date('Y-m-d');}?>" name="from" class="form-control pull-left" type="date" placeholder=" From" />
                                    <p class="pull-left" style="font-size:10px;">From Date</p>

                                </div>
                                <div class="col-md-2">
                                    <input id="date_2" value="<?php $to= $this->input->post('to');if($to){echo $to;}else{echo date('Y-m-d');}?>" name="to" class="form-control" type="date" placeholder=" To" />
                                    <p class="pull-left" style="font-size:10px;">To Date</p>
                                </div>

И контроллер выглядит так:


$to = $this->input->post('to');
      $from = $this->input->post('from');
      $dealer = $this->input->post('dealer');
      $product_type =implode('',$this->input->post('product_type'));

      $data['report'] = $this->Inward_model->allrecords($from,$to,$dealer,$product_type);

      $this->load->view('admin/reportlist', $data);

Я должен отображать записи в соответствии с текущей датой при загрузке страницы, но вместо этого он показывает нетзаписей. Когда я var_dumped $ from и $ to он дал мне нулевое значение. текущая дата не была отправлена ​​контроллеру. Это прекрасно работает, когда я выбираю даты вручную или когда нажата кнопка поиска. Что мне делать ??

1 Ответ

0 голосов
/ 26 октября 2019

Попробуйте заменить php argument of value на это:

<?= empty($this->input->post('from')) || !date('Y-m-d',strtotime($this->input->post('from'))) ? date('Y-m-d') : $this->input->post('from'); ?>

то же самое с to. После этого ваша форма должна выглядеть так:

<div class="col-md-12 box-header">
    <?php echo form_open('admin/Inward/showreport', 'class="form-inline" style=""');?>
        <div class="col-md-2">
           <input 
                 id="date_1" 
                 value="<?= empty($this->input->post('from')) || !date('Y-m-d',strtotime($this->input->post('from'))) ? date('Y-m-d') : $this->input->post('from'); ?>" 
                 name="from" 
                 class="form-control pull-left" 
                 type="date" 
                 placeholder=" From" />
            <p class="pull-left" style="font-size:10px;">From Date</p>
        </div>

        <div class="col-md-2">
            <input 
                  id="date_2" 
                  value="<?= empty($this->input->post('to')) || !date('Y-m-d',strtotime($this->input->post('to'))) ? date('Y-m-d') : $this->input->post('to'); ?>" 
                  name="to" 
                  class="form-control" 
                  type="date" 
                  placeholder=" To" />
            <p class="pull-left" style="font-size:10px;">To Date</p>
        </div>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...