如何在编辑数据后重定向到同一页面?

时间:2017-09-29 08:45:05

标签: php codeigniter pagination

老师。你能用我的代码帮我吗?我想在编辑后将页面重定向到同一页面。

这是我的控制器

function edit_book(){
$editBook = array(
    'id' => $this->input->post('id'),
    'book_title' => $this->input->post('book_title'),
    'category' => $this->input->post('category'),
    'author' => $this->input->post('author')
    ):
    $this->m_profile->edit_book($data1, $data, 'book_data');
    redirect('app/book')
}

假设我正在编辑第3页的数据。如何在提交编辑后的数据后再次重定向到第3页(app / book / 3)?

我试图通过获取URI值来解决它(假设页面是app / book / 3)< - 我需要这个' 3'来放入重定向代码。所以我从许多stackeroverflow答案中实现这个代码,希望得到一些我可以使用的数组

$url =  "//{$_SERVER['HTTP_HOST']}{$_SERVER['REQUEST_URI']}";
$escaped_url = htmlspecialchars( $url, ENT_QUOTES, 'UTF-8' );
$query_str = parse_url($escaped_url, PHP_URL_QUERY);
parse_str($query_str, $query_params);
print_r($query_params);

但结果是array()或null。任何人都可以帮助我。感谢

2 个答案:

答案 0 :(得分:-1)

在控制器中需要传递最后一个值,如" 3"作为参数,以便任何编辑的值可以传递给控制器​​。然后在编辑代码之后,您可以通过php头函数重定向,并将传递的值作为参数重定向在同一页面上,如下例所示:

<?php     
function edit_book($id){

Your all edited codes here.

// To redirect to the same page with avalue
redirect('same_controller/method/'.$id, 'refresh');
}
?>

答案 1 :(得分:-1)

$.ajax

尝试下面的代码我可以解决你的问题。我在网址中传递了id。