begin process at 2010 02 10 05:55:57
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Redirection aprés verification formulaire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Redirection aprés verification formulaire

mardi 28 avril 2009 à 22:26:37 | Redirection aprés verification formulaire

sebing

Bonjour,

J'ai trouvé un script pour faire un espace membre, mais j'aimerai que celui aprés authentification m'ouvre une page.
Voici le script:

//on appel les fonctions permettant la connection a la BDD
require_once("_admin/inc_func.php"); //chemin ou se trouve les includes des fonctions


//on vérifie si les éléments de l'identification on été transmis
if (!isset($_POST["login"]) && !isset($_POST["mdp"])){
    echo "<b>ERREUR</b> : les paramètres d'indentification n'ont pas été transmis, veuillez réessayer de vous identifier.";
    exit;
}

//on vérifie si les 2 champs on bien été rempli
if (empty($_POST["login"]) || empty($_POST["mdp"])){
    echo "<b>ERREUR</b> : l'un des champs du formulaires n'a pas été rempli, veuillez remplir les 2 champs s'il vous plais.";
    exit;
}   

$connexion=connexion(USER,PASS,SERVER);
//on regarde a qui appartient le login
$req="select ".PREFIX."mdp from ".PREFIX."login where ".PREFIX."login=\"".$_POST["login"]."\";";

//on regarde a quel groupe d'utilisateur appartient le login
//et une fois que l'on sait a quel groupe il appartient on vérifie le mot de passe
if (nbligne($req)==1){
    $curseur=execreq($req,$connexion);
    $data=mysql_fetch_array($curseur);
    if (!(md5($_POST["mdp"])==$data[PREFIX."mdp"])){
        echo "<b>ERREUR</b>: votre mot de passe est éronné.";
        exit;
    }
}else{
    echo "<b>ERREUR</b>: vous n'êtes pas inscrit sur le site.";
    exit;
}

//on démarre une session et on y inscrit les variables de session correspondant a l'utilisateur

$_SESSION['login']=$_POST["login"];
$_SESSION['identification']="ok";


echo "Vous êtes maintenant identifié<br />";
echo "page de <a href=\"test.php\">test</a>";

J'aimerai remplacer les "echo" par une page, ou dois je mettre le header?

Merci par avance

Seb
mardi 28 avril 2009 à 22:50:03 | Re : Redirection aprés verification formulaire

kohntark

Membre Club
Salut,

Heu ... en lieu et place des echo.

Cordialement,


Kohntark -

mardi 28 avril 2009 à 23:04:20 | Re : Redirection aprés verification formulaire

sebing

J'ai déjà essayé et ça me mettait un message d'erreur.

Merci de votre aide

Seb
mardi 28 avril 2009 à 23:09:03 | Re : Redirection aprés verification formulaire

sebing


Le message d'erreur était le suivant:
Warning: Cannot modify header information - headers already sent by (output started at /mnt/102/sda/5/7/xxx/espace_membres/identification_valid.php:8) in /mnt/102/sda/5/7/xxx/espace_membres/identification_valid.php on line 56

Voici la ligne que j'avais mise à la place des echo:
header('Location: http://amk78.free.fr/');

Merci encore

Seb
mercredi 29 avril 2009 à 03:31:56 | Re : Redirection aprés verification formulaire

jreaux62

Réponse acceptée !
Bonjour,
"headers already sent" : NE PAS METTRE DE CODE HTML (echo ..., balises, ... espace) avant un header(location ...) ou un session_start.

DONC :

Page verification.php :
<?php
$messageerreur = '';
//on appel les fonctions permettant la connection a la BDD
require_once("_admin/inc_func.php"); //chemin ou se trouve les includes des fonctions
//on vérifie si les éléments de l'identification on été transmis
if (!isset($_POST["login"]) && !isset($_POST["mdp"])){
    $messageerreur .=  "<b>ERREUR</b> : les paramètres d'indentification n'ont pas été transmis, veuillez réessayer de vous identifier.";
    header('Location: identification.php');
    exit;
}
//on vérifie si les 2 champs on bien été rempli
if (empty($_POST["login"]) || empty($_POST["mdp"])){
    $messageerreur .=  "<b>ERREUR</b> : l'un des champs du formulaires n'a pas été rempli, veuillez remplir les 2 champs s'il vous plait.";
    header('Location: identification.php');
    exit;
}  
$connexion=connexion(USER,PASS,SERVER);
//on regarde a qui appartient le login
$req="select ".PREFIX."mdp from ".PREFIX."login where ".PREFIX."login=\"".$_POST["login"]."\";";
//on regarde a quel groupe d'utilisateur appartient le login
//et une fois que l'on sait a quel groupe il appartient on vérifie le mot de passe
if (nbligne($req)==1){
    $curseur=execreq($req,$connexion);
    $data=mysql_fetch_array($curseur);
    if (!(md5($_POST["mdp"])==$data[PREFIX."mdp"])){
        $messageerreur .=  "<b>ERREUR</b>: votre mot de passe est éronné.";
    header('Location: identification.php');
        exit;
    }
}else{
    $messageerreur .=  "<b>ERREUR</b>: vous n'êtes pas inscrit sur le site.";
    exit;
}
//on démarre une session et on y inscrit les variables de session correspondant a l'utilisateur
$_SESSION['login']=$_POST["login"];
$_SESSION['identification']="ok";
header('Location: http://amk78.free.fr/');
?>


Et dans la page identification.php :
<html>
.....
<body>
<form method="post" action="verification.php">
.......... (formulaire d identification : login et mdp)
</form>
<?php
// affichage du message d'erreur eventuel apres soumission
echo @$messageerreur; ?>
</body>
</html>

mercredi 29 avril 2009 à 18:14:07 | Re : Redirection aprés verification formulaire

sebing

Merci pour votre aide.

Ça fonctionne très bien.

Encore merci

Seb
mercredi 29 avril 2009 à 21:35:36 | Re : Redirection aprés verification formulaire

sebing

Ça ne fonctionne pas, en fait il n'y a pas de démarrage de session.
Comment faire?
Merci

Seb

mercredi 29 avril 2009 à 21:39:18 | Re : Redirection aprés verification formulaire

sebing

C'est normal j'avais oublié <?php session_start(); ?>.

Tout fonctionne correctement.

Quelle tête en l'air

Merci encore

Seb
jeudi 30 avril 2009 à 08:37:38 | Re : Redirection aprés verification formulaire

kohntark

Membre Club
Tout fonctionne correctement.
=>
Je ne sais pas trop comment tu as modifié le script mais il y a des choses qui ne peuvent pas fonctionner :
Tous les $messageerreur ne servent à rien et ne seront jamais affiché

$_SESSION['login']=$_POST["login"];
$_SESSION['identification']="ok";
header('Location: http://amk78.free.fr/');

=>
La session n'étant pas démarrée les 2 premières lignes ne servent à rien. Si tu mets un session_start avant le header plantera.

En fait je pense que tu pourrais faire bien plus simple.

Cordialement,


Kohntark -

jeudi 30 avril 2009 à 14:46:07 | Re : Redirection aprés verification formulaire

sebing

Bonjour Kohntar,

Si j'enlève $messageerreur, la requête ne marche pas., jreaux62 peux tu m'expliquer à quoi sert $messageerreur.
Que me conseils tu Kohntar?
Merci de vos aides, j'ai pas fini aprés je vais essayer de faire des redirections par rapport à des groupes (c'est pas gagné!!!)

Bonne journée

Merci encore

Seb

1 2

Cette discussion est classée dans : erreur, login, post, echo, mdp


Répondre à ce message

Sujets en rapport avec ce message

Login et password [ par fabienfsf ] Hello tout le monde, je suis débutant et j'ai un problème ...Je voudrais faire un simple truc de connction avec login et password donc j'ai fait un te modification de mot de passe [ par gabs77 ] bonjour, g un pb avec mon script de modification de mot de passe et je ne parviens pas a trouver le pb le mesage d'erreur est le suivant:Erreur SQL !C insertion dans une base [ par 01cod10 ] pouvez vous m'aider à corriger ce bout de script. Voici le message d'erreur que j'ai eu :  Erreur SQL !INSERT INTO membres VALUES("", "monia", "ff3d00 mes erreur de ce marque pas espace membre [ par speedylol ] bonjour voici , j ai un script membres que j'ai modifier a mon goût mes les erreur de fonction pas je vois pas pq seriez vous m'eclairez la dessus svp contact via formailre mail (ne passe pas) [ par speedylol ] bonjour j'ai un petit soucis avec mon formailare de contact pat mail , il ne passe pas je reviens toujours a la case réessayez seriez vous m'aider svp Problème de login [ par Masterchiefer ] Bonjour tout le monde, je suis en train de créer un système de login à partir d'un code déjà écrit. J'ai fait les modifs nécessaires mais j'ai une err Problème [ par azep ] Bonjour, j'ai un problème avec mon inscription ^^Voici mon problème, quand j'oublie un champ, sa marche et sa me met "Vous avez oublié le champs ..." Problème avec mon script [ par azep ] Bonjour, je ne trouve pas d'erreur dans mon code php,Pouvez vous m'aider s-il vous plait ?Voici mon code php : $p page blanche avec requete SQL dans page PHP [ par sedajosh ] Salut tout le monde et merci par avance de l'aide que vous voudrez bien m'apporter. Je cherche a faire une page de connexion qui permet d'accéder a u authentification [ par ahlemlo ] bonjour à touspouvez vous me corriger l'erreur je veux bien vérifier le login et le password mai l'erreur est que losque je tape un login et un passwo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,577 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales