[php] probleme include

Fermé
moogly_praha Messages postés 73 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 13 septembre 2010 - 7 févr. 2008 à 16:25
masdmaah Messages postés 48 Date d'inscription samedi 26 janvier 2008 Statut Membre Dernière intervention 9 décembre 2016 - 7 févr. 2008 à 18:59
Bonjour,


tout d'abord merci de venir voir mon problème.

Je vous l'explique :
j'ai créé un site dont les pages apparaissent dans un cadre avec des includes avec le haut de page, un menu, la page d'affichage et un pied de page.
Ensuite, j'ai créé une page avec un formulaire d'inscription sur le meme schéma sauf que le menu n'apparait pas. Cette page possède son architecture, donc est différente de celle du site (vous me suivez ?)
Bon, quand l'user rentre un mauvais passwd ou un login (ou ne rentre rien), je fais un include qui recharge ma page et affiche le formulaire de connexion avec une tite phrase pour dire qu'il y'a problème.
Jusque là tout va bien.
Maintenant quand l'user entre le bon login + passwd, un include('index.php') se lance (l'index possédant, je le rapel) une autre architecture). Mais le probleme c'est qu'il le charge dans l'architecture de la page connexion.php. Donc ce qui apparait c'est le haut de page en continu ....

J'espere que vous m'avez compris !! en vous remerciant.
A voir également:

10 réponses

Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
7 févr. 2008 à 16:39
Si j'ai bien compris, alors il faut faire autrement.

Fais en sorte que ton forumulaire de connexion pointe vers une page sans interface (exemple login.php).

A la fin de cette page tu peux faire quelques chose comme ça :

Si les infos sont fausses :
header("Location connexion.php"); die();

Sinon, si elles sont valides :

header("Location index.php"); die();

J'espère que ça peut t'aider.
0
Dans ton lien il faut utiliser target="_top" si je me souviens bien !
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
7 févr. 2008 à 16:47
target="_top" permet de faire apparaitre la page pointer par le lien dans la cadre du haut d'une fenêtre multi-cadre...

Je ne crois pas que ce soit la solution au problème ici.
0
Archeus01 Messages postés 1571 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 9 juin 2022 449
7 févr. 2008 à 16:48
Non non il utilise pas les frames heureusement ^^.
0
Ha ok, je n'avais pas bien compris.
Alors tu peux certainement utiliser le $_GET dans ta page index.php et y mettre des conditions pour que cela s'affiche dans ta DIV en fonction de la valeur de cette variable GLOBALE.
0
moogly_praha Messages postés 73 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 13 septembre 2010 5
7 févr. 2008 à 16:56
Merci beaucoup pour vos réponses.

En fait voila le schéma de "ce qui s'passe" :

connexion.php (formulaire) --> verif_connexion.php (avec script php) -------
-----> soit c'est faux et ca revient à connexion.php (dans la meme architecture)
-----> soit c'est bon et ca envoi sur une page différente

et sinon Scalpweb à quoi sert le
header("Location connexion.php"); die();
et
header("Location index.php"); die(); 
???

Encore merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
moogly_praha Messages postés 73 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 13 septembre 2010 5
7 févr. 2008 à 16:57
non non alex mon seul probleme est d'afficher une page complete différente alors que la ca me charge le cadre (de la nouvelle page) dans l'ancienne (celle de connexion.php)

Vous voyez ce que je veux dire ??

Ou peut etre que c'est moi qui comprend rien ... ce qui est fort possible aussi :)
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
7 févr. 2008 à 16:57
J'ai oublié les ':', ça donne :
header("Location: index.php"); die();

Ça permet de rediriger le navigateur vers la page index.php.

C'est ce que tu veux apparemment.
0
moogly_praha Messages postés 73 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 13 septembre 2010 5
7 févr. 2008 à 16:59
ahouias c'est ca je vais tester et je te dis !!!

merci beaucoup
0
moogly_praha Messages postés 73 Date d'inscription lundi 22 octobre 2007 Statut Membre Dernière intervention 13 septembre 2010 5
7 févr. 2008 à 17:10
Euh d'après ce que je lis il faut placer le header au début de la page avant toute balise html.

Et en fait ca ne résou_ pas mon problème ...
0
Scalpweb Messages postés 1467 Date d'inscription samedi 13 mars 2004 Statut Membre Dernière intervention 5 mai 2010 43
7 févr. 2008 à 18:00
Bah.. Dans ta page verif_connexion.php tu n'a pas de balise html !

Donc c'est bon...
non ?
0
masdmaah Messages postés 48 Date d'inscription samedi 26 janvier 2008 Statut Membre Dernière intervention 9 décembre 2016 2
7 févr. 2008 à 18:59
Par moogly_praha, le jeudi 7 février 2008 à 16:57:49
non non alex mon seul probleme est d'afficher une page complete différente alors que la ca me charge le cadre (de la nouvelle page) dans l'ancienne (celle de connexion.php)

Vous voyez ce que je veux dire ??

Ou peut etre que c'est moi qui comprend rien ... ce qui est fort possible aussi


oui, on voit tout à fait.
include sert à intégré une portion de code présent dans un fichier
la seule solution est header("Location: index.php");

Il faut qu'il n'y ait aucun code html avant les fonctions header(), mais tu peux mettre du code php, (attention de ne laiser aucun espace devant ta balise "<?php" au début du fichier, car c'est considéré comme du code html)
je te conseille donc de mettre comme action de formulaire, un fichier php (ex : verif.php)
et dedans tu vérifies les identifiants entrés par l'utilisateur et ceux présents dans la base de données
Si identifiants bons
==> header("Location: index.php");
Sinon
==>header("Location: connexion.php");




0