Перенаправление Codeigniter не работает правильно - PullRequest
0 голосов
/ 17 сентября 2018

Я уже пробовал другой перенаправляющий код неработающие темы, но у них другие проблемы, чем у меня.

It throws this kind of error.

Это тот, где я положил мой редирект.

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class SampleView extends CI_Controller {

public function index() {

    $data['title'] = 'Home';

    $this->load->view('includes/header', $data);
    $this->load->view('pages/index');
    $this->load->view('includes/footer');

}

public function update() {

    $data = array(
        'item_id' => $this->input->post('i_id', true),
        'item_name' => $this->input->post('i_name', true),
        'item_price' => $this->input->post('i_price', true),
        'item_description' => $this->input->post('i_description', true),
    );

    $this->sampleviewmodel->update($data);
    redirect('sampleview/items');
}
}

Это форма, которая будет ссылаться на функцию обновления.

<form method="POST" action="<?=$this->config->base_url();?>sampleview/update">

Это мой config.php

$config['base_url'] = 'http://localhost/w31_ton';

А это мой htaccess .

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /w31_ton

RewriteCond %{REQUEST_URI} ^system.*
RewriteRule ^(.*)$ /index.php/$1 [L]

RewriteCond %{REQUEST_URI} ^application.*
RewriteRule ^(.*)$ /index.php/$1 [L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

PS. Все работает нормально, моя единственная проблема в том, что он не будет перенаправлять на нужную страницу.

1 Ответ

0 голосов
/ 17 сентября 2018

Вы должны загрузить вспомогательный файл URL перед вызовом функции redirect(), чтобы редирект работал. Внутри функции обновления добавьте - $this->load->helper('url');. Это должно исправить это.

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