2012-02-23 3 views
-1

Мне просто интересно, есть ли способ передать параметры методу php из вызова ajax? Это то, что я имел в виду, но это не работает.передать параметры php-методу с помощью ajax

$.ajax({ 

    type: "POST", 
    url: "?do=saverates", 
    data: {"siteId": siteId, "portId": portId}, 
    dataType: "json", 
    async: true, 

    success: function(jsonObj) {} 

    }); 

метод PHP:

public function saveRates($siteId, $portId){ 

    echo "$siteId : $portId"; 
} 
+0

строка url: «? do = saverates отсутствует окончательная цитата? – mindandmedia

+0

и функция успеха не закрыта? – mindandmedia

ответ

1

Вы имеете дело с в PHP так же, как вы имеете дело с любыми данными из запроса HTTP.

$_POST['siteId'] 

т.д.

+0

Я не беспокоюсь о том, как вы обычно это делаете, я могу заставьте его работать, вызвав $ _POST в php-методе, но я просто хотел знать, могу ли я передавать параметры параметризованному методу без использования $ _POST. Мне бы очень хотелось повторно использовать существующий метод с параметрами. – reagan

+1

Вы не можете напрямую вызывать PHP ** методы ** по HTTP вообще. Вы делаете HTTP-запрос к скрипту. Этот скрипт читает '$ _POST' и вызывает метод, который вы хотите, с аргументами, извлеченными из данных POST. – Quentin

+0

Спасибо, это все, что я хотел знать, может ли это быть сделано. Это означало мое любопытство некоторое время назад и никогда не могло найти ничего, связанного с моим ответом. – reagan

-1

"? Делать = saverates" не является URL. попробуйте что-то вроде «mycontroller/mymethod»

+0

Этот url работает, это как раз то, как у нас есть наш контроллер. – reagan

+0

"? Do = saverates" ** является ** URL-адресом, хотя относительные URI, состоящие только из строки запроса, необычны и даже несмотря на то, что использование строки запроса в URI запроса POST также необычно. – Quentin

+0

Я согласен, однако я не могу спорить о том, что уже разработано, чтобы выжить вживую. – reagan

Смежные вопросы