session - Problèmes concernant les rappels pour les pages de renvoi PHP
伊谢尔伦
伊谢尔伦 2017-05-16 13:10:58
0
4
546

Excusez-moi, après que PHP ait exécuté une certaine opération effectuée par l'utilisateur (exécution sautée, exécution non-ajax), il passe ensuite à la dernière page ou à d'autres pages pour rappeler à l'utilisateur de renvoyer le résultat de l'exécution. Comment y parvenir. rappel uniquement cette fois-ci ? L'exécution de la demande de saut est valide, et le rappel de données n'existera plus après avoir à nouveau actualisé cette page.

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

répondre à tous(4)
仅有的幸福

Exécuter d'abord le rappel, puis sauter ? Ou passer à une page de transition, puis à la page cible après le rappel ?

曾经蜡笔没有小新

Vérifiez si SESSION existe avant chaque saut. S'il n'existe pas, sautez. Une fois le saut réussi, écrivez SESSION.

.
$noticed = $_SESSION['noticed'];
if(isset($noticed)){
    //your code here
}
滿天的星座

php peut obtenir la connexion à la page source :

$_SERVER[“HTTP_REFERER”]

Vous pouvez obtenir le lien vers la page source et le comparer pour voir s'il saute de la page que vous avez exécutée. pour porter un jugement. Ou vous pouvez ajouter un paramètre après la connexion de saut après une exécution réussie. Lorsqu'il y a des paramètres, cela indique que l'exécution a réussi. Il n'y a pas de rappel pour l'actualisation normale.

Mais il est plus recommandé d'écrire une fonction. Entrez l'invite et la page à laquelle accéder. Pour plus de détails, veuillez vous référer aux astuces de certains frameworks.

刘奇

Basé sur les suggestions des personnes ci-dessus :

//跳转调用
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;
  }
}
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal