当前位置: 代码迷 >> PHP >> 怎么不让smarty对url中的“&”转成“&”
  详细解决方案

怎么不让smarty对url中的“&”转成“&”

热度:40   发布时间:2016-04-28 17:02:36.0
如何不让smarty对url中的“&”转成“&”?
后台:

function save_sort_handler(){
//-----获取应该返回的地址-----//
$backUrl=R('backUrl','');
if(empty($backUrl) && isset($_SERVER["HTTP_REFERER"])){
$backUrl=$_SERVER["HTTP_REFERER"];
}
$GLOBALS['smarty']->assign("backUrl",$backUrl);
//----------------------//
$GLOBALS['smarty']->display("takeaway_sort.dwt");
}


前台:

<script type="text/javascript">
alert('{$backUrl}');
var isComplete={$isComplete};

if(isComplete){
var result="保存成功!";
}
else{
var result="保存失败!";
}
if(confirm(result+" 是否返回?")){
location.href='{$backUrl}';
}
else{
var type='{$type}';
if(type!=''){
location.href="takeaway_sort.php?type={$type}&backUrl={$backUrl}";
}
}
</script>


后台的echo和前台的alert出的$backUrl分别为:

------解决思路----------------------
转义一下不行吗?
------解决思路----------------------
你的来源url地址是什么样子?是否也是被处理过的。
------解决思路----------------------
你在 $GLOBALS['smarty']->assign("backUrl",$backUrl); 之前看一下 $backUrl
echo $backUrl;
应该是已经变了,与 smarty 无关
------解决思路----------------------
alert({$backurl
------解决思路----------------------
smarty:nodefaults}) 试试