我是Zend Framework的初学者。我通过ajax查询传递变量,如此
$.ajax({
method: "GET",
url: "/filename/fetch-client-data.php",
dataType: 'json',
// and so on
}
我需要获取表单传递的变量。我不知道如何使用jquery.ajax中的$ _GET ['varaible name']。
以下是我在控制器功能中尝试的内容
public function fetchClientDataAction()
{
$this->_helper->layout->disableLayout();
$this->_helper->viewRenderer->setNoRender(TRUE);
$this->get('variablename')=$variable_name;
}
有人能指出我正确的方向吗?
答案 0 :(得分:1)
您可以像这样访问PHP中的超级全局$ _GET: -
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);
}