Как решить, пытаясь получить свойство не объекта в рамках Codeigniter - PullRequest
0 голосов
/ 04 декабря 2018

Я пытаюсь получить последнюю введенную сумму для отображения в текстовом поле. Код контроллера:

    $this->db->select('amount');
    $this->db->order_by("recno", "desc");
    $this->db->limit(1);
    $query = $this->db->get('daybook');
    $data['r']=$query->result_array(); 

Просмотреть код:

<input type="text" placeholder="Credit" name="amount1" id="TDAmt" class="form-control input-xs sum2" value="<?php echo $r->amount; ?>"  >

Я получаю сообщение об ошибке ниже

    Message: Undefined variable: r
    Message: Trying to get property of non-object

Как я могу решить это .. Помогите мне достичь этого ..

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Если результат будет только один, вы можете использовать 'row_array' вместо 'result_array' .Если вы используете массив row , вы можете получить доступ к значению с помощью $ r ['amount'] Если это массив result , вы можете получить доступ к значению с помощью $ г [0] [ 'сумма']

0 голосов
/ 04 декабря 2018

Ваше сообщение об ошибке говорит: Message: Trying to get property of non-object.Вы также вызываете $data['r']=$query->result_array(); Так что это не объект, это ассоциативный массив.Поскольку это не объект, а ассоциативный массив, вы не можете использовать оператор ->.Вам нужно получить доступ к значению, как $r['amount'].

Вы также можете проверить значение в файле шаблона.вот так <?php echo isset($r) ? $r['amount'] : ''; ?>

Вы также можете var_dump перед печатью в шаблоне.

Думаю, это вам поможет.Спасибо.

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