2014-02-18 3 views
0

Im использованием codeginiter в рамках PHP и я хочу сделать JQuery пост данные в один из моих методов .. Метод объявлен внутри контроллера Входящие и его по имени прочитать, например:codeginiter JQuery разместить данные чистые URL

public function read($data){ 
//do somethin with $data 
} 

в моем яваскрипта коде у меня есть этот

$.post('inbox/read', { somedatahere:value}, function.....); 

Когда я использую эту форму я получил этот пост URL www/inbox/read?somedatahere=value , но я действительно хотел быть таким образом ... www/inbox/read/value...

это, как я мог бы попытаться решить проблему, но THS не фантазии ...

$.post('inbox/read/' + value, {}, function.....); 
+0

WWW/Входящий/читать? Somedatahere = значение, это не пост, это получается, твоя проблема не здесь. Попытайтесь найти ее из другого места. –

ответ

1

Прежде всего, если вы делаете jQuery пост, данные не в URL, но внутри тела запроса.

$.post('inbox/read', { url: value }); 

Вы можете получить доступ к этой информации в контроллере следующим образом:

function read() { 
    $url = $this->input->post('url'); 
} 

Убедитесь, что вы загружаете правильные хелперы и библиотеки. Не уверен, какой из них вам нужно загрузить, я думаю, что помощник URL-адреса, но я не уверен, что прошло некоторое время с тех пор, как я работал с Codeigniter.

+0

Да, это хорошая идея, я был на неправильной линии. – Julioarhernandez

0

Вы можете попробовать это

post_url = '<?=base_url()?>' + 'inbox/read'; 
post_data = { 
    'somedatahere': status, 
}; 
$.post(post_url, post_data, function(e){ 
    // todo 
} 
0

Чтобы увеличить Dieter's answer, вы можете просто использовать запрос на регулярный АЯКС и изменить URL-адрес

$.ajax({ 
    url: '/inbox/read/' + value, 
    ... 
Смежные вопросы