开发者

get current page url and change action

开发者 https://www.devze.com 2023-03-03 13:31 出处:网络
I need to give current page url and change action url. After that I want echo that开发者_如何学Go in view file.

I need to give current page url and change action url. After that I want echo that开发者_如何学Go in view file. I want do these in view file, not controller!

Do you have any idea?


You can get current page url as follows:

  $uri = Zend_Controller_Front::getInstance()->getRequest()->getRequestUri();

  // or using userAgent view helper:
  $uri = $this->userAgent()->getServerValue('request_uri');

The view helper $this->userAgent() returns an instance of Zend_Http_UserAgent that can provide you with many useful info.

If you want to get an action in your views you can get it as follows:

Zend_Controller_Front::getInstance()->getRequest()->getActionName();

Not sure what you mean by 'changing an action'. You want to change it when you echo it, or you want to redirect user. Anyway, hope this will help.


If your current scope is a controller action, you can do this:

$uri = $this->view->serverUrl() . $this->view->url();


$front = Zend_Controller_Front::getInstance();
$fullUrl = 'http://' .
$front->getRequest()->getHttpHost() .
$front->getRequest()->getRequestUri();

Don't forget protocol(in this example http://) if you are going to use $fullUrl for href attributes


Late to the party for sure, but the following worked for me in a Zend 1 project:

<?php echo htmlspecialchars($this->serverUrl(true)); ?>

If you're echoing out the (user supplied) URL on the page, it's a good idea to use htmlspecialchars() to avoid someone sending your users to http://example.com/?q=<script>nastyBusiness()</script>.

0

精彩评论

暂无评论...
验证码 换一张
取 消