84669 Lernen von Personen
152542 Lernen von Personen
20005 Lernen von Personen
5487 Lernen von Personen
7821 Lernen von Personen
359900 Lernen von Personen
3350 Lernen von Personen
180660 Lernen von Personen
48569 Lernen von Personen
18603 Lernen von Personen
40936 Lernen von Personen
1549 Lernen von Personen
1183 Lernen von Personen
32909 Lernen von Personen
请问,php执行用户操作的某一个操作之后(跳转执行的,非ajax执行)再跳转到上次页面或者其他页面 给用户返回执行结果的提醒,如何实现该提醒只在本次执行跳转请求有效,再次刷新本页面后不再存在该数据提醒。
小伙看你根骨奇佳,潜力无限,来学PHP伐。
先执行提醒,然后再跳转呢?或者跳转到一个过渡页面,提醒完之后再跳去目标页面?
每次跳转之前判断是否存SESSION,如果不存在,则跳转.跳转成功之后,写SESSION.
$noticed = $_SESSION['noticed']; if(isset($noticed)){ //your code here }
php可以获取到来源页面的连接使用:
$_SERVER[“HTTP_REFERER”]
就能得到来源页面的连接,可以进行对比,是不是从你执行的页面跳转的。来进行判断。或者是你可以在执行成功后给跳转连接后面追加一个参数。有参数的时候提示执行成功。正常刷新不存在提醒。
不过更推荐的是你写一个函数。传入提示语和要跳转的页面。具体可以参考一些框架的提示做法。
根据以上几位的建议:
//跳转调用 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); } //视图调用(在视图加判断) 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; } } /** * 参数是否存在 */ function existsParam($key) { if(isset($_SESSION['RedirectMessage'][$key])){ return true; }else{ return false; } }
先执行提醒,然后再跳转呢?或者跳转到一个过渡页面,提醒完之后再跳去目标页面?
每次跳转之前判断是否存SESSION,如果不存在,则跳转.跳转成功之后,写SESSION.
php可以获取到来源页面的连接使用:
就能得到来源页面的连接,可以进行对比,是不是从你执行的页面跳转的。来进行判断。或者是你可以在执行成功后给跳转连接后面追加一个参数。有参数的时候提示执行成功。正常刷新不存在提醒。
不过更推荐的是你写一个函数。传入提示语和要跳转的页面。具体可以参考一些框架的提示做法。
根据以上几位的建议: