une redirection en php ,c'est :
header ('Location: mapage.php');
Mais ce ne peut se faire si des en-têtes ont déjà été envoyés. Bref, tu ne peux pas afficher de html avant ce header ().
euh, j'ai pas très bien compris ton code et la ou tu veux en venir, mais si ça t'intéresse, moi j'utilise ceci pour rediriger:
echo '<META HTTP-EQUIV="Refresh" CONTENT="1; URL=tapage.php">';
dans cet exemple, tu sera redirigé vers tapage.php au bout d'une seconde (le nb de secondes est la valeur de content). Je préfère cette méthode à la méthode header('Location:tapage.php') car avec celle-ci il ne faut rien mettre comme balise html avant, sous peine d'une erreur que j'ai souvent rencontré avant de découvrir ce moyen de redirection... Mais je ne sais pas si c'est du "codage propre" aussi.
tu veux dire si tu rediriges sur la meme page? la je ne sais pas, mais c'est clair que ça va te faire une boucle infinie dans ce cas la: tu rafraichis, t'attends une seconde, tu rafraichis à nouveau, tu attend, tu rafraichis... Si tu veux que cela ne rafraichisse qu'une seule fois, passe un nouveau paramètre, par exemple tu fait url=tapage.php?booleen=1 et ensuite tu fais :
if($_GET['booleen']!=1){
tu rafraichis
}
naturellement, avant il faut tester si $_GET['booleen '] existe.Dis moi si c'était bien cela ta question, ou si j'ai mal compris ce que tu voulais.
je veux rediriger mes utilisateurs selon le profil qu'ils ont, voila pourquoi j'ai choisi une fonction comme ci dessous :
function menu($num)
{
switch ($num)
{
case 1 :
break;
case 2 :
break;
case 3 :
break;
case 4 :
break;
default :
echo"
break;
}
}
Je veux faire une redirection pour chaque cas ?
après case 1 : redirection....
Faudrait voir à lire un peu les docs, quand même, avant de poser des questions sur un forum.
header
HTTP/1.1 Specification pour plus d'informations sur les en-têtes <VAR class= literal>Location:</VAR>, y compris le protocole, hôte et chemin absolu. Mais certains navigateurs acceptent les URI relatives. Vous pouvez généralement utiliser les variables globales <VAR class=varname>$_SERVER['HTTP_HOST']</VAR>, <VAR class=varname>$_SERVER['PHP_SELF']</VAR> et dirname() pour construire vous-même une URI absolue :
session.use_trans_sid est activé. Il doit être passé manuellement en utilisant la constante <TT class =constant>SID</TT>.
Les scripts PHP génèrent souvent du HTML dynamiquement, qui ne doit pas être mis en cache, ni par le client, ni par les proxy intermédiaires. On peut forcer la désactivation du cache de nombreux clients et proxy avec :
session_cache_limiter() et <VAR class= literal>session.cache_limiter</VAR> peuvent être utilisés pour générer les en-têtes de caches corrects, lorsque les sessions sont utilisées.
N'oubliez jamais que header() doit être appelée avant que le moindre contenu ne soit envoyé, soit par des lignes HTML habituelles dans le fichier, soit par des affichges PHP. Une erreur très classique est de lire un fichier avec include() ou require(), et de laisser des espaces ou des lignes vides, qui génèreront un affichage avant que la fonction header() ne soit appelée. Le même problème existe avec les fichiers PHP/HTML standards.
ob_start() et ob_end_flush() dans vos scripts, ou en modifiant la directive de configuration <VAR class =literal>output_buffering</VAR> dans votre fichier <TT class=filename>php.ini</TT> ou vos fichiers de configuration du serveur.
Si vous voulez que vos utilisateur recoivent une alerte pour sauver les fichiers générés, comme si vous génériez un fichier PDF, vous pouvez utiliser l'en-tête Content-Disposition pour fournir un nom de fichier par défaut, à afficher dans le dialogue de sauvegarde.
safe mode est activé, l'UID du script est ajouté à la partie <VAR class=literal>realm</VAR> des en-têtes <VAR class=literal>WWW-Authenticate</VAR> que vous envoyez avec cet en-tête.
Est ce que la solution que tu me proposes peut entrer dans ma fonction ou pas ou faut que je fasse abstraction de ma fonction avec mon switch, case et break ?
Ce que j'appelle redirection c'est que après après valider ton identité par ton login et ton mot de passe, cela te redirige vers une frame précise qui regroupe sommaire et acceuil ?
Je pense que tu t'embarques dans un code pas possible, pour rediriger dans une autre frame faut du javascript à gogo... bref utiliser les frames pour faire un site est une mauvaise solution.
Si tu as une autre solution que les frames pour que le menu principal soit du côté gauche et la page auquel est relié le menu apparaissent à droite, je t'écoute, je suis toute ouie.