JeuWeb - Crée ton jeu par navigateur
Connexion et Espace membre - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : Connexion et Espace membre (/showthread.php?tid=2178)



Connexion et Espace membre - Reaven - 25-12-2007

Slt,

Voilà j'ai rencontré un problème concernant mon script de connexion avec renvoi à l'espace membre.
Voici mon formulaire de connexion, le script qui traite les infos et le script de l'espace membre:

Formulaire connexion:

Code PHP :
<?php 
<form action="connexion.php" method="post">
<
input type="text" name="seigneur" value="Seigneur" onFocus="if(this.value=='Seigneur')this.value='';"/><br>
<
input type="password" name="passe" value="password" onFocus="if(this.value=='password')this.value='';"/><br>
<
input type="submit" name="submit" value="Connexion"/>
</
form>

Traitement des information (connexion.php)

Code PHP :
<?php
/*Le fichier connexion.php sert à traiter les informations postées sur le
formulaire d'authentification du fichier menu.php*/
session_start();
include(
"config.php");

$seigneur= $_POST['seigneur'];
$passe= $_POST['passe'];

if(!empty(
$seigneur) && !empty($passe))
{
$connexion= mysql_connect($hote,$utilisateur,$mdp);
$choix_db= mysql_select_db($data_base);
$requete= "SELECT * FROM endael_joueurs WHERE seigneur='$seigneur'";
$resultat= mysql_query($requete) or die(mysql_error());
$donnees= mysql_fetch_array($resultat);

$id= $donnees['id'];
$seigneur_sql= $donnees['seigneur'];
$verif= $donnees['passe'];


if(
$passe != $verif)
{
$reponse_2= "Votre passe n'est pas le bon";
}
else
{
if((
$_POST['seigneur'] == 'xxx') && ($_POST['passe'] == 'xxx'))
{
$_SESSION['seigneur'] == $seigneur_sql;
header ("Location: admin.php");
}
else
{
$_SESSION['seigneur'] == $seigneur_sql;
header ("Location: royaume.php");
}
}
mysql_close($connexion);
}
if(empty(
$seigneur) || empty($passe))
{
$reponse_3= 'Veuillez remplir tous les champs';
}

?>

Espace membre (royaume.php):

Code PHP :
<?php
session_start
();
include(
"config.php");

if(!isset(
$_SESSION['seigneur']))
{
die(
'<br>Vous n\'est pas autorisé à accéder à cette page<br>');
}

$connexion= mysql_connect($hote,$utilisateur,$mdp);
$choix_db= mysql_select_db($data_base);
$seigneur_joueur= $_SESSION['seigneur'];
$requete= "SELECT * FROM endael_joueurs WHERE seigneur='$seigneur_joueur'";
$resultat= mysql_query($requete)or die(mysql_error());
$result= mysql_fetch_array($resultat);

$seigneur= $result['seigneur'];
$email= $result['email'];
$race= $result['race'];

mysql_close($connexion);
?>

Voilà mes 3 fichiers. Le formulaire lui est placé dans le menu (menu.php). Pour l'espace membre je n'ai mit que le code php car apparement c'est de la que vient mon pb.
Mon problème c'est que lorsque je me connecte avec un compte test, au lieu de me rediriger il m'envoit ce message d'erreur:

Citation :Vous n'êtes pas autorisé à accéder à cette page

Qui ce trouve ici:

Code PHP :
<?php 
if(!isset($_SESSION['seigneur']))
{
die(
'<br>Vous n\'est pas autorisé à accéder à cette page<br>');
}

Pourriez-vous m'aider à dénicher ce qui fait que ce message apparait tout le temps ?
J'ai cherché pendant toute l'après-midi et je n'ai rien trouvé.

Merci
Dark Angels


RE: Connexion et Espace membre - Sephi-Chan - 25-12-2007

La coloration syntaxique du forum suffit à voir un bug qui doit entraîner un parse error :
Code PHP :
<?php 
if(($_POST['seigneur'] == 'xxx) && ($_POST['passe'] == 'xxx'))

Quoiqu'il en soit, je te soupçonne de ne pas chercher beaucoup par toi même.


Sephi-Chan


RE: Connexion et Espace membre - Eluox - 26-12-2007

Salut, j'ai regardé et en passant j'ai souhaité modifier un peu ton script ( je vais pas dire ameliorer car je code surement mal), mais bon je montre ce que j'ai fait,


Non testé donc je peux pas affirmé que sa marche.


Connexion :

Code PHP :
<?
session_start
();
include(
"config.php");

$seigneur= htmlentities($_POST['seigneur']);
$passe= htmlentities($_POST['passe']);


if(isset(
$seigneur) && isset($passe) )
{


$connexion= mysql_connect($hote,$utilisateur,$mdp);
$choix_db= mysql_select_db($data_base);
$resultat= mysql_query("SELECT * FROM endael_joueurs WHERE seigneur='$seigneur'") or die(mysql_error());
$donnees= mysql_fetch_assoc($resultat);


$id= $donnees['id'];
$seigneur_sql= $donnees['seigneur'];
$verif= $donnees['passe'];



if(empty(
$seigneur)){$erreur .= 'Vous devez entrer un pseudo.<br/>';}
if(empty(
$passe)){$erreur .= 'Vous devez entrer un mot de passe.<br/>';}
if(
$passe != $verif && !empty($passe)){$erreur .= 'Votre mot de passe n\'est pas bon.<br/>';}


if (empty(
$erreur))
{

$_SESSION['id'] = $id;
$_SESSION['seigneur'] == $seigneur_sql;
session_register('id');

header ("Location: royaume.php");
}

if(isset(
$erreur)){print $erreur;}
}



?>


Royaume :

Code PHP :
<?php
session_start
();
include(
"config.php");


if(!
session_is_registered('id')) {//SI joueur connecté
die('<br>Vous n\'est pas autorisé à accéder à cette page<br>');
}
else{



$connexion= mysql_connect($hote,$utilisateur,$mdp);
$choix_db= mysql_select_db($data_base);
$seigneur_joueur= $_SESSION['seigneur'];
$resultat= mysql_query("SELECT * FROM endael_joueurs WHERE seigneur='$seigneur_joueur'")or die(mysql_error());
$result= mysql_fetch_array($resultat);

$seigneur= $result['seigneur'];
$email= $result['email'];
$race= $result['race'];

mysql_close();
}
?>



RE: Connexion et Espace membre - Reaven - 26-12-2007

Super merci je l'essaye et je te tiens au courant.

Sephi-Chan concernant le ' qui avait été oublié c'est parce qu'avant les "xxx" il y avait des infos à ne pas montrées et en modifiant j'ai sans le vouloir supprimé de ' .

Oxman vu ta réputation je ne l'ouvrirais pas trop pour être poli pcq vu les remarques que j'ai lu concernant ton comportement, je me mettrais dans l'idée de changer.

Dark Angels


RE: Connexion et Espace membre - Eluox - 26-12-2007

Normalement sa devrait marcher,

J'utilise le systeme pour mes sites et jeux,

Mais bon codé en vitesse je peux pas te dire Smile


RE: Connexion et Espace membre - Reaven - 26-12-2007

Slt,

Je me suis justifié concernant la remarque de Sephi-Chan et l'erreur ne venait surement pas de la et ce n'est pas du tout la question que j'ai posée. J'ai pas envie de débattre.

dark vengeur j'ai essayé ton code et il semblerait qu'il y ait un problème. Ca m'affiche ceci:

Citation :';} if (empty($erreur)) { $_SESSION['id'] = $id; $_SESSION['seigneur'] == $seigneur_sql; session_register('id'); header ("Location: royaume.php"); } if(isset($erreur)){print $erreur;} } ?>

Dark Angels


RE: Connexion et Espace membre - Sephi-Chan - 26-12-2007

Dark Angels a écrit :Super merci je l'essaye et je te tiens au courant.

Sephi-Chan concernant le ' qui avait été oublié c'est parce qu'avant les "xxx" il y avait des infos à ne pas montrées et en modifiant j'ai sans le vouloir supprimé de ' .

Oxam vu ta réputation je ne l'ouvrirais pas trop pour être poli pcq vu les remarques que j'ai lu concernant ton comportement, je me mettrais dans l'idée de changer.

Dark Angels

Ahah ! Oxam !
Okay pour le problème d'apostrophe, mais je trouve quand même que tu manques un peu d'autonomie, n'hésite pas à bien te documenter. Wink


Sephi-Chan


RE: Connexion et Espace membre - Eluox - 26-12-2007

Sa t'affiche sa ou et quand
?


RE: Connexion et Espace membre - Reaven - 26-12-2007

Ca m'affiche l'erreur tout en haut de ma page index.php là où je me connecte.

:mdr: Sephi-Chan j'ai edité et changé "Oxam" en "Oxman" avant qu'il ne relève par une remarque qui pourrait agravé son cas Wink

Dark Angels