Почему я не могу обновить запись в codeigniter? - PullRequest
0 голосов
/ 20 марта 2020

Я получаю эту ошибку, A PHP Произошла ошибка. Серьезность: Уведомление

Сообщение: Попытка получить свойство 'post_title' не-объекта.

Я не могу получить данные формы для печати на странице и не могу обновить. Пожалуйста помоги! Итак, я попытался обновить каждую запись, и это могут сделать только пользователи-исполнители. Но я не могу понять, как показать отдельный пост на странице формы. Записи правильно сохраняются и удаляются, но не могут их обновлять.

Controller

function editpost($post_id)//Edit post page
{
    if (!$this->session->Role =='member,artist') 
    {
        redirect(base_url() . 'login');
    }
    $data['success'] = 0;

    if( !empty($this->input->post('post_title')) ) {
        $data['post_title']             =  $this->input->post('post_title');
        $data['post']                   =  $this->input->post('post');
        $data['active']                 =  1;
                    /* >> file attach */




View
                    <form action="<?= base_url()?>starter/editpost/" method="post" class="justify- 
content-center"  enctype='multipart/form-data'>
                        <div class="form-group">
                            <label class="sr-only">Title</label>
                            <input type="text" class="form-control" placeholder="Title" 
name="post_title" value="<?php echo $post->post_title; ?>">
                        </div>
                        <div class="form-group">
                            <label class="sr-only">Description</label>
                            <textarea class="form-control" placeholder="Describe it" name="post" ><? 
php echo $post->post; ?></textarea>
                        </div>
                        <div class="row py-4">
    <div class="col-lg-6 mx-auto">

        <!-- Upload image input-->
<!-- File Button --> 

  <div class="col-md-5">
<input name="main_img[]" type="file" accept="image/x-png,image/gif,image/jpeg">
</div>

<br>
<br>

<p style="padding-top: 15px"><span>&nbsp;</span><input class="submit" type="submit" name="update" 
value="Publish" /></p>
                    </form>

Ответы [ 2 ]

0 голосов
/ 20 марта 2020

Вам не нужно передавать данные поста в контроллер, вы можете получить данные поста в любом месте

<input type="text" class="form-control" placeholder="Title" name="post_title" value="<?php echo ($this->input->post('post_title')!='')?$this->input->post('post_title'):''; ?>">
0 голосов
/ 20 марта 2020

используйте прямую переменную, потому что вы передаете только значения, которые вы отправляете из формы.

//like :
//for post_title 
<input type="text" class="form-control" placeholder="Title" 
name="post_title" value="<?php echo $post_title; ?>">
// for description
textarea class="form-control" placeholder="Describe it" name="post" ><? 
php echo $post; ?></textarea>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...