recherche

Maison  >  Questions et réponses  >  le corps du texte

session - Problèmes concernant les rappels pour les pages de renvoi PHP

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.

伊谢尔伦伊谢尔伦2759 Il y a quelques jours548

répondre à tous(4)je répondrai

  • 仅有的幸福

    仅有的幸福2017-05-16 13:12:58

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

    répondre
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-05-16 13:12:58

    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
    }

    répondre
    0
  • 滿天的星座

    滿天的星座2017-05-16 13:12:58

    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.

    répondre
    0
  • 怪我咯

    怪我咯2017-05-16 13:12:58

    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;
      }
    }

    répondre
    0
  • Annulerrépondre