На моем веб-сайте я использую ajax post запрос, чтобы показать контент вокруг моего сайта, это делается с помощью этого кода,
$("a.contentlink").click(function(ev) {
ev.preventDefault();
$('#main_menu').hide();
var url = $(this).attr("href");
var data = "calltype=full&url="+url;
$.ajax({
url:url,
type: "POST",
data: data,
success : function (html) {
$('#left-content-holder').html(html);
}
})
});
Как вы можете видеть, я передаю URL-адрес в `$ _POST 'и могу получить к нему доступ в методе, который вызывает javascript, этот метод называется get_content_abstract и выглядит так:
public function get_content_abstract() {
$this->load->model('content_model');
if($this->input->post('calltype') == "abstract"){
if($query = $this->content_model->get_content_by_id($this->uri->segment(3))) {
$data['abstract'] = $query;
}
$this->load->view('template/abstract', $data);
}
elseif($this->input->post('calltype') == "full") {
if($query = $this->content_model->get_content_by_id($this->uri->segment(3))) {
$data['full'] = $query;
}
$this->load->view('template/full-content', $data);
}
}
Как бы то ни было, я не добавил новую функцию, которая позволит пользователю сохранять контент в «системе закладок», однако в моем методе я не могу получить доступ к сообщению, используя codeigniters $this->input-post('url')
(где URL - это одна из частей данные, передаваемые в javascript), он говорит, что сообщение пусто, когда я дам дамп его, это делается с помощью этого метода,
public function love_this() {
die(var_dump($this->post->input('url')));
}
Может ли кто-нибудь помочь понять, почему этот метод пуст в этом методе love_this?