請問,php執(zhí)行用戶操作的某一個操作之后(跳轉(zhuǎn)執(zhí)行的,非ajax執(zhí)行)再跳轉(zhuǎn)到上次頁面或者其他頁面 給用戶返回執(zhí)行結(jié)果的提醒,如何實現(xiàn)該提醒只在本次執(zhí)行跳轉(zhuǎn)請求有效,再次刷新本頁面后不再存在該數(shù)據(jù)提醒。
小伙看你根骨奇佳,潛力無限,來學(xué)PHP伐。
先執(zhí)行提醒,然后再跳轉(zhuǎn)呢?或者跳轉(zhuǎn)到一個過渡頁面,提醒完之后再跳去目標(biāo)頁面?
每次跳轉(zhuǎn)之前判斷是否存SESSION,如果不存在,則跳轉(zhuǎn).跳轉(zhuǎn)成功之后,寫SESSION.
$noticed = $_SESSION['noticed'];
if(isset($noticed)){
//your code here
}
php可以獲取到來源頁面的連接使用:
$_SERVER[“HTTP_REFERER”]
就能得到來源頁面的連接,可以進行對比,是不是從你執(zhí)行的頁面跳轉(zhuǎn)的。來進行判斷?;蛘呤悄憧梢栽趫?zhí)行成功后給跳轉(zhuǎn)連接后面追加一個參數(shù)。有參數(shù)的時候提示執(zhí)行成功。正常刷新不存在提醒。
不過更推薦的是你寫一個函數(shù)。傳入提示語和要跳轉(zhuǎn)的頁面。具體可以參考一些框架的提示做法。
根據(jù)以上幾位的建議:
//跳轉(zhuǎn)調(diào)用
function redirect($url,$message=false)
{
if($message){
foreach ($message as $key => $value) {
if(is_array($value)){
$_SESSION['RedirectMessage'][$key] = implode(',', urlencode($value));
}else{
$_SESSION['RedirectMessage'][$key] = urlencode($value);
}
}
}
header('location:'.$url);
}
//視圖調(diào)用(在視圖加判斷)
function getMessage($key1)
{
$data = explode(',',$_SESSION['RedirectMessage'][$key1]);
$_SESSION['RedirectMessage'] = null;
if(empty($data)){
return false;
}
foreach ($data as $key => $value) {
$data[$key] = urldecode($value);
}
if(count($data)==1){
return $data[0];
}else{
return $data;
}
}
/**
* 參數(shù)是否存在
*/
function existsParam($key)
{
if(isset($_SESSION['RedirectMessage'][$key])){
return true;
}else{
return false;
}
}