$ _GET в Zend Framework - PullRequest
       4

$ _GET в Zend Framework

0 голосов
/ 05 февраля 2012

Я новичок в Zend Framework.Я передаю переменную через запрос ajax, как это

$.ajax({
     method: "GET",
     url: "/filename/fetch-client-data.php",
            dataType: 'json',
     // and so on
}

Мне нужно получить переменную, переданную формой.Я не знаю, как использовать $ _GET ['varaible name'] из jquery.ajax.

Вот что я пытаюсь использовать в функции контроллера

 public function fetchClientDataAction()
 {
    $this->_helper->layout->disableLayout();
    $this->_helper->viewRenderer->setNoRender(TRUE);
    $this->get('variablename')=$variable_name;
 } 

Может кто-нибудь указать мнев правильном направлении?

1 Ответ

1 голос
/ 05 февраля 2012

Вы получаете доступ к суперглобальному $ _GET в PHP следующим образом: -

public function fetchClientDataAction()
{
    $this->_helper->layout->disableLayout();
    $this->_helper->viewRenderer->setNoRender(TRUE);
    $variable_name = $_GET['variable_name'];
}

Существует более похожий на Zend Framework способ: -

$variable_name = $this->getRequest()->getParam('variable_name');

Очевидно, что вам потребуется очистить полученные данные в соответствии с вашим вариантом использования.

Если вы запрашиваете отправку данных обратно клиенту для обработки с помощью jQuery, вам не нужно беспокоиться о $ _GET или $ _POST. Вы просто отправляете свои данные как json в теле ответа: -

public function fetchClientDataAction()
{
    $this->_helper->layout->disableLayout();
    $this->_helper->viewRenderer->setNoRender(TRUE);
    $variable_name = $_GET['variable_name'];
    //now we can respond
    $result = doSomethingWithVariable_name($variable_name);
    header('OK', true, 200);
    header('Content-type: application/json');
    echo json_encode($result);
}
...