[英]How do I pass a URL as a parameter of an URL in Zend Framework?
我的問題源於我向用戶發送 email ,內容如下:
如您所見,我要做的是傳遞 url 作為參數“dest”,以便登錄頁面知道用戶登錄后重定向到哪里。但是,我看到以下內容:
這是我用來創建 email 的視圖:
<p>
<?if($this->invitation->user):?>
<a href='<?=$this->serverUrl($this->baseUrl().$this->url(array(
'action'=>'index',
'controller'=>'login',
'dest'=>$this->url(array(
'action'=>'confirm',
'controller'=>'invitation',
'confirmation_key'=>$this->invitation->confirmation_key
))
)));?>'>Log in to confirm this invitation.</a>
//The view continues...
任何關於如何防止將 URI 編碼項轉換為其文字值的想法將不勝感激。
你不能把它作為一個簡單的 GET 參數發送過來嗎?
這就是它實際上是如何完成的。
$_SERVER['referer']
您還可以像這樣升級您的鏈接:
<a href='<?=$this->serverUrl($this->baseUrl().$this->url(array(
'action'=>'index',
'controller'=>'login',
'dest'=>base64_encode($this->url(array(
'action'=>'confirm',
'controller'=>'invitation',
'confirmation_key'=>$this->invitation->confirmation_key
))))
));?>'>Log in to confirm this invitation.</a>
但是在/login/index
上,您將需要使用base64_decode()
來獲取原始的不是最漂亮的解決方案,但是如果您無法使用簡單的查詢字符串,這是一種方法,如何通過URL 安全。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.