Redirection

nicoj -  
totodunet Messages postés 1377 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,

J'essaye de mettre une redirection vers une page lorsque l'utilisateur n'a pas validé son adresse mail (via le code envoyé). Cependant je bloque, celà ne fonctionne pas.
Est ce que quelqu’un aurait une idée de correction ?

Merci d'avance

if(strstr($_SERVER['PHP_SELF'],'mail_validation.php') == false) {
    if(identity_IsLogged() && identity_getUserId() != null && !$g_identity->isMailValide()) {
        $query = "SELECT mail_valide FROM user WHERE id_user= '";
		$result = db_query_read($query);
		if (!$result=0) {
			header( "Location: mail_validation.php" ) ;
		}else {
			header( "Location: index.php" ) ;
		}
    }
}

2 réponses

NHenry Messages postés 15219 Date d'inscription   Statut Modérateur Dernière intervention   365
 
comment ça "ça ne fonctionne pas" ? Tu peux détailler ?
A part ça, je ne vois pas où tu mets l'id de l'utilisateur dans ta requête.

J'interviens principalement en VB6 et VB.NET, avec un peu de C#, mais la modération m'amène souvent sur d'autre langages.
En VB.NET pensez à activer "Option Explicit" et "Option Strict"
0
nicoj
 
quand je dis ça ne fonctionne pas, c'est que ça redirige pas l'utilisateur vers la page de validation lorsqu'il n'a pas validé son mail
0
NHenry Messages postés 15219 Date d'inscription   Statut Modérateur Dernière intervention   365
 
As-tu lu ma 2ième ligne ?
Je pense que ton soucis vient de là.
0
jubasse Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   1
 
Salut ! parfois un petit
exit();
juste après tes
header("Location ...");
suffit à couper l’exécution du script et rediriger.
0
totodunet Messages postés 1377 Date d'inscription   Statut Membre Dernière intervention   200
 
L'erreur courante est d'avoir du code HTML ou simplement du texte en dehors du code avant la redirection PHP (pas d'echo non plus). Cela provoque une erreur car le serveur a déjà constitué son entête HTTP.

Voir ceci : https://php.developpez.com/faq/?page=correction_erreurs#erreur_headers_already_sent
0