Comment rediriger utilisateur si rechargement page
Fermé
Lavozano
Messages postés
11
Date d'inscription
dimanche 25 décembre 2016
Statut
Membre
Dernière intervention
29 décembre 2016
-
Modifié par Lavozano le 29/12/2016 à 15:44
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 - 29 déc. 2016 à 23:15
Flachy Joe Messages postés 2103 Date d'inscription jeudi 16 septembre 2004 Statut Membre Dernière intervention 21 novembre 2023 - 29 déc. 2016 à 23:15
A voir également:
- Comment rediriger utilisateur si rechargement page
- Comment supprimer une page sur word - Guide
- Comment traduire une page - Guide
- Comment utiliser chromecast - Guide
- Comment savoir si quelqu'un utilise mon adresse ip - Guide
- Comment rediriger une adresse mail - Guide
4 réponses
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
29 déc. 2016 à 15:53
29 déc. 2016 à 15:53
Bonjour,
Oui c'est possible
Par exemple .. initialiser une variable de Session lors de l'affichage de la page
Si la variable existe déjà ... faire la redirection
en gros
Oui c'est possible
Par exemple .. initialiser une variable de Session lors de l'affichage de la page
Si la variable existe déjà ... faire la redirection
en gros
<?php session_start(); if(!empty($_SESSION['toto'])){ header('location: http://www.example.com'); exit(); }else{ $_SESSION['toto'] = "peuImporte"; }
jordane45
Messages postés
38299
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
20 novembre 2024
4 704
Modifié par jordane45 le 29/12/2016 à 17:12
Modifié par jordane45 le 29/12/2016 à 17:12
humm...
Pas en PHP .
A la limite avec du Javascript ....
En JS tu pourrais tester si l'utilisateur appuie sur la touche F5 en étant dans la page
Un truc du style :
Pas en PHP .
A la limite avec du Javascript ....
En JS tu pourrais tester si l'utilisateur appuie sur la touche F5 en étant dans la page
Un truc du style :
window.addEventListener('keydown', kdown, false); function kdown(e) if ((e.which || e.keyCode) == 116) { window.location = "http://www.example.com"; } }
Pitet
Messages postés
2826
Date d'inscription
lundi 11 février 2013
Statut
Membre
Dernière intervention
21 juillet 2022
525
29 déc. 2016 à 17:10
29 déc. 2016 à 17:10
Salut,
En reprenant la solution de jordane45 et en remplaçant la redirection via php par une ouverture d'un nouvel onglet en javascript, cela pourrait répondre à ton besoin ?
Bonne journée,
En reprenant la solution de jordane45 et en remplaçant la redirection via php par une ouverture d'un nouvel onglet en javascript, cela pourrait répondre à ton besoin ?
<?php session_start(); if(!empty($_SESSION['toto'])){ echo "<script>window.open('http://www.example.com');</script>"; exit(); }else{ $_SESSION['toto'] = "peuImporte"; }
Bonne journée,
Lavozano
Messages postés
11
Date d'inscription
dimanche 25 décembre 2016
Statut
Membre
Dernière intervention
29 décembre 2016
29 déc. 2016 à 18:37
29 déc. 2016 à 18:37
Bonjour,
Merci Jordane, ton conseil me semble pertinent, je vais donc orienter mes recherches vers une possibilité liée au javascript, et je reviendrai pour vous faire part de mes avancées.
Merci à Pitet pour le conseil bien que je voudrais que l'utilisateur reste sur le même onglet. De façon simple, le but est qu'il soit redirigé vers une autre url lorsqu'il clique sur le bouton de rechargement (ou en tapant F5) tout en restant sur le même onglet, c'est-à-dire sans provoquer l'ouverture d'un autre.
Bonne soirée,
Merci Jordane, ton conseil me semble pertinent, je vais donc orienter mes recherches vers une possibilité liée au javascript, et je reviendrai pour vous faire part de mes avancées.
Merci à Pitet pour le conseil bien que je voudrais que l'utilisateur reste sur le même onglet. De façon simple, le but est qu'il soit redirigé vers une autre url lorsqu'il clique sur le bouton de rechargement (ou en tapant F5) tout en restant sur le même onglet, c'est-à-dire sans provoquer l'ouverture d'un autre.
Bonne soirée,
29 déc. 2016 à 16:25
Je viens de tester ce code et il fonctionne. Cependant, comme je n'ai pas été assez précis dans ma question alors il ne fonctionne pas dans mon cas actuel. Car je souhaiterais que la redirection ne soit pas systématique. Je m'explique :
L'utilisateur est redirigé vers une autre page s'il recharge la page actuel sans que cela l'empêche d'y revenir par la suite en ouvrant un nouvel onglet ou une nouvelle fenêtre.
Est-ce possible ?
Modifié par Flachy Joe le 29/12/2016 à 22:34
29 déc. 2016 à 22:34
Modifié par Flachy Joe le 29/12/2016 à 23:20
C'est plus facile en AJAX mais il y a une méthode coté serveur :
- la page A.php génère un code unique ###, l'enregistre dans une variable de session et redirige immédiatement sur la page A###.php
- A###.php est redirigé via une réécriture d'URL sur A.php avec le code en argument
- S'il y a un code argument et qu'il correspond à celui enregistré dans la variable de session alors la page A supprime le code de la variable de session et affiche le contenu sinon elle redirige vers l'autre page.
En résumé : les liens dirigent vers A.php, le navigateur est renvoyé vers A###.php qui n'existe qu'une fois, son rafraîchissement provoque la redirection. Par contre si on redemande A.php, on obtiens bien une nouvelle page A###.php avec le même contenu