[html/php] bienvenu "Mr x" et déconnexion

the_jb Messages postés 731 Statut Membre -  
the_jb Messages postés 731 Statut Membre -
Bonjour,
j'ai réalisé un site dynamique, j'ai testé les entrées et sorties par la base de données tout est ok. maintenant petite touche esthétique :

J'aimerai savoir comment faire pour le "bienvenu Mr X" c'est à dire après s'être connecté en temps qu'utilisateur il y est marqué "bienvenu "son pseudo"" .

et en meme temps si vous savez pour la déconnexion faite m'en part merci à vous !


cordialement the_jb
A voir également:

34 réponses

the_jb Messages postés 731 Statut Membre 58
 
up !!!
0
Utilisateur anonyme
 
Salut,

pour afficher le pseudo (si tu utilise des session (ce que je te recommande) et non un cookie) fait comme suit:

<?php echo "Bonjour ".$_SESSION['le_nom_de_ta_session_qui_contient_le_pseudo_du_membre_ou_id'];


tu peut récuperer plus d'information sur ce membre en question en faisant comme suit:

<?php
$info_membre = mysql_query("SELECT * FROM la_table_membre WHERE pseudo = '".$_SESSION['pseudo']."'");
$info_membre1 = mysql_fetch_array($info_membre);
?>


PS: il faut, sur la page de connexion, attribuer à $_SESSION['pseudo'] comme valeur le pseudo du membre pour réaliser la requête ci-dessus.

ensuite, tu peut récupérer tous les champs possible (sans mettre celui du mdp par exemple(aucune utilité et pas très sécurisé))

par exemple, si ta table est comme ceci: id, pseudo, mail, mdp, date_inscription
et que tu souhaite réuperer son id, tu fait:
<?php echo "Votre id: ".$info_membre1['id']; ?>




Pour la page de déconnexion:

tu à deux solution (moi en ce qui me concerne, j'en vois deux)

soit, sur la page membre tu met un lien de type espace-membre.php?action=deconnexion

ou, directement une page deconnexion.php (ou deco.php, logout.php, bref, comme bon te semble)


1er solution (?action=deconnexion):
<?php
if(isset($_GET['action']) AND $_GET['action'] == 'deconnexion') {
  session_start();
  $_SESSION = array();
  session_destroy(); // on détruit les session
  header("Location: index.php"); // redirection vers la page d'accueil de ton site
}
?>

<html>
<head....

2ème solution (page deconnexion.php):
<?php
  session_start();
  $_SESSION = array();
  session_destroy(); // on détruit les session
  header("Location: index.php"); // redirection vers la page d'accueil de ton site
?>


n'hésite pas pour plus d'aide.
++
0
the_jb Messages postés 731 Statut Membre 58
 
Merci pour ta réponse je test tout ça des que j'ai fini je t'en donne des nouvelles
0
the_jb Messages postés 731 Statut Membre 58
 
.je viens de me rendre compte que pour me connecté je pouvais marquer n'importe quoi dans le champ nom d'utilisateur et mot de passe pour acceder a la page utilisateur. Ma boucle n'est donc pas fini . . . je te met l'extrait :


<body>
<p>Pas encore inscrit ?<a href="formulairemilieu.html"> Cliquez ici !</a>
<center><p><h1>se connecter</h1></p>
<form action="interfaceUtmilieu.html">
<p>Nom d'utilisateur : <input type="text" name="Nomutilisateur" value=""/></p>
<p>Mot de passe : <input type="password" name="mdp" value=""/></p>
<input type="submit" value="se connecter"/><input type="reset"/></center>
</form>
<p><a href="milieu.html">retour à la page d'accueil</a></p>
<?php
include ('connexion.php');
$loggin='Nomutilisateur';
$mdp='mdp';
$req="SELECT pseudoUt, mdpUt FROM UTILISATEUR";
$res=mysql_query($req)
while ($loggin != $ligne[pseudoUt] && $mdp != $ligne[mdpUt])
{
$ligne=mysql_fetch_array
}
?>
</body>
</html>

.puis j'ai un nouveau soucis avec le passage entre la connexion et l'acces a l'interface utilisateur car enfaite toutes mes pages sont séparés en 2 donc j'ai un haut et un milieu cependant j'ai créer un haut-2 qui permet de mettre le "bienvenu Mr X" sauf qu'il ne veut pas s'afficher pourtant je précise bien qu'il doit apparaitre après s'être connecté. voila le code de haut-2.html , interfaceUtmilieu.html et interfaceUt.html

[haut-2.html]

<body>
<div align="center">
<table width="893" height="128" border="0" align="center" bordercolor="#FFFFFF">
<tr>
<td height="72" colspan="9"><div align="center">
<table width="839" border="0" align="center" cellspacing="0">
<tr>
<td width="141"><div align="center"><img src="images%20fixes/logorex.jpg" width="69" height="68"></div></td>
<td width="567"><div align="center">
<p><span class="Style4">...</span></p>
</div>
</td>
<td width="117"><div align="center" class="Style1">
<p align="center"><script language="JavaScript" src="http://services.toccom.net/compteurs/compteur.php?num=1480"></script>
<?php
echo "Bonjour ".$_SESSION['pseudoUt'];
?>
<p><a id="logout" href="deconnexion.php" title="Déconnexion">déconnexion</a></p>
</div></td>
</tr>
</table>

[interfaceUtmilieu.html]

<body>
<center><h2>Nous avons besoin de votre aide !</h2></center>
<table width="590" border="0">
<tr>
<td width="450"><div align="left"><span class="Style1">veuillez remplir ce formulaire : </span></div></td>
<td width="100"><div align="center"><a href="notation.php"><img src="images%20fixes/formulaire_icone.gif" width="50" height="60"></a></div></td>
</tr>
</table>
<h2><a href="milieu.html">retour à l'accueil</a></h2>
<br/><br/><br/><br/>
<div align="center">

[interfaceUt.html]


<frameset rows="185,*" cols="*" framespacing="0" frameborder="no" border="0">
<frame src="haut-2.html" name="topFrame" scrolling="No" noresize="noresize" id="topFrame" title="topFrame">
<frame src="interfaceUtmilieu.html" name="mainFrame" id="mainFrame" title="mainFrame">
</frameset>
<noframes><body>
</body>
</noframes>
<!-- Mirrored from www.cine-rex.com/ by HTTrack Website Copier/3.x [XR&CO'2006], Mon, 26 Feb 2007 15:08:38 GMT -->
</html>

si tu peux m'éclairer la dessus merci!
0

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

Posez votre question
the_jb Messages postés 731 Statut Membre 58
 
up ! besoin d'aide !
0
WebDesigner Messages postés 79 Statut Membre 12
 
Si tu souhaites utiliser les variables de session comme identifiant et tester la connexion des utilisateurs : dans ta page login.php ou connexion

<?php session_start(); 
 //commences toujours par session_start(); avant tout code php// 

require ('connexion.php'); 

$login = $_POST['Nomutilisateur]; 
$passe = $_POST['mdp'];  

$connect = mysql_connect($localhost, etc...) or die(mysql_error());  
mysql_select_db($base_name);  

$query_log = "SELECT * FROM $table WHERE user =\"$login\" AND password =\"$passe\""; 
$result = mysql_query($query_log) or die(mysql_error());  

if (mysql_num_rows($result) == 0) 
{header ('location: index.php?connect=false');}  
//renvoi vers la page d'erreur si aucun resultat n'a été trouvé, à toi de gérer avec un if isset// 

else 
{ 
 $row = mysql_fetch_row($result); 
 $_SESSION['login'] = $row[1]; 
 $_SESSION['passe'] = $row[2]; 
 $_SESSION['email'] = $row[3]; 
  
 header ('location: pagedésirée.php'); 
} 


?> 
0
the_jb Messages postés 731 Statut Membre 58
 
Je n'y arrive pas . . .
0
WebDesigner Messages postés 79 Statut Membre 12
 
Avec quelle page, tu test la connexion vers ta bdd ?

Donnes moi le code de la page appellée par ton formulaire de connexion.
dans ton <form method="POST" action="la page concernée">
0
the_jb Messages postés 731 Statut Membre 58
 
j'ai ceci qui est [connexionmilieu.html]
<body>
<p>Pas encore inscrit ?<a href="formulairemilieu.html"> Cliquez ici !</a>
<center><p><h1>se connecter</h1></p>
<form action="interfaceUtmilieu.php">
<p>Nom d'utilisateur : <input type="text" name="Nomutilisateur" value=""/></p>
<p>Mot de passe : <input type="password" name="mdp" value=""/></p>
<input type="submit" value="se connecter"/><input type="reset"/></center>
</form>
<p><a href="milieu.html">retour à la page d'accueil</a></p>
<?php
include ('connexion.php');
$loggin='Nomutilisateur';
$mdp='mdp';
$req="SELECT pseudoUt, mdpUt FROM UTILISATEUR";
$res=mysql_query($req)
while ($loggin != $ligne[pseudoUt] && $mdp != $ligne[mdpUt])
{
$ligne=mysql_fetch_array
}
?>
</body>
</html>

qui est rediriger après connexion vers [interfaceUtmilieu.html] qui n'est pas fini car je suis entrain de chercher a faire quelque chose de plus simple . . .

franchement je désespère . . . je mélange tout je ne m'y retrouve plus
0
WebDesigner Messages postés 79 Statut Membre 12
 
La page concernée dans ton formulaire de connexion c'est "interfaceUtmilieu.php"

Premier soucis, tu n'indiques pas à ton formulaire "method="POST", tu dois donc rectifier ceci :

<form method="POST" action="interfaceUtmilieu.php">


Ensuite, pourquoi indiquer tes variables dans cette page, si le formulaire cible celle-ci "interfaceUtmilieu.php" ?

à quoi correspond pour toi cette page => interfaceUtmilieu.php?

- la page de destination après la connexion ?
- ou la page pour se connecter à ta bdd ?
0
the_jb Messages postés 731 Statut Membre 58
 
(je t'ai envoyer un message privé)
pour ce qui suit après la connexion c'est la page interfaceUtmilieu (juste après que l'utilisateur est entrer son identifiant et son mot de passe qu'il puisse accéder a une interface lui permettant ensuite de pouvoir noter un film par exemple) c'est pour cela que j'ai mis interfaceUtmilieu.php .
0
WebDesigner Messages postés 79 Statut Membre 12
 
Voilà donc ton erreur, le formulaire cible cette page
interfaceUtmilieu.php
.

Hors, c'est un formulaire de connexion, donc si un utilisateur rentre ses identifiants, et qu'il souhaite se connecter, on passe directement sur la page
interfaceUtmilieu.php
sans passer par une reconnaissance via ta base de données.

Ce qu'il te faut donc, c'est de changer la cible du formulaire en
login.php
par exemple, et d'y mettre le code suivant dans cette page :

<?php session_start(); 

require ('connexion.php'); 

$login = $_POST['Nomutilisateur]; 
$passe = $_POST['mdp'];  

$connect = mysql_connect($localhost, etc...) or die(mysql_error());
// N'oublies pas de changer tes infos de connexion à ta bdd à la place de $locahost etc...//

mysql_select_db($base_name);  // On sélectionne ta base à modifier $base_name

$query_log = "SELECT * FROM $table WHERE user =\"$login\" AND password =\"$passe\"";
// Penses à changer $table par le nom de la table de tes membres //

$result = mysql_query($query_log) or die(mysql_error()); 

if (mysql_num_rows($result) == 0) 
{
header ('location: erreur.php');
} 
//renvoi vers la page d'erreur si aucun résultat n'a été trouvé, à toi de gérer quelle page tu désire appeler en cas d'erreur // 

else 
{ 
 $row = mysql_fetch_row($result); 

 $_SESSION['login'] = $row[1]; 
 $_SESSION['passe'] = $row[2];
  
 header ('location: pagedésirée.php');
// Là seulement, tu y insères la page désirée, c'est à dire interfaceUtmilieu.php 
} 

0
the_jb Messages postés 731 Statut Membre 58
 
j'ai fait des petites modifs et j'ai ca

Notice: Undefined index: Nomutilisateur in C:\Users\...\Desktop\EasyPHP-5.3.3\www\...\login.php on line 5

Notice: Undefined index: mdp in C:\Users\...\Desktop\EasyPHP-5.3.3\www\...\login.php on line 6

Notice: Undefined variable: base_name in C:\Users\...\Desktop\EasyPHP-5.3.3\www\...\login.php on line 12

Notice: Undefined variable: table in C:\Users\...\Desktop\EasyPHP-5.3.3\www\...\login.php on line 14
Erreur de syntaxe près de 'WHERE user ="" AND password =""' à la ligne 1
0
the_jb Messages postés 731 Statut Membre 58
 
tout est résolu sauf la 12
0
the_jb Messages postés 731 Statut Membre 58
 
j'ai mis ça a ma line 12

mysql_select_db($gestfilm);

ma BDD s'appelle gestfilm donc c'est bon ?

il me dise
Notice: Undefined variable: gestfilm in C:\Users\Jean-Baptiste\Desktop\EasyPHP-5.3.3\www\...\www.cine-rex.com\login.php on line 12
Champ 'user' inconnu dans where clause
0
WebDesigner Messages postés 79 Statut Membre 12
 
Vérifies si dans ta table regroupant tes utilisateurs et tes mots de passe, on retrouve bel et bien le champs "user"

Autrement, change la requête SQL ou se trouve WHERE user=

ou user est le champs de ta table
0
the_jb Messages postés 731 Statut Membre 58
 
ça y est maintenant ca me met

Objet non trouvé!
L'URL requise n'a pu etre trouvée sur ce serveur. La référence sur la page citée semble être erronée ou perimée. Nous vous prions d'informer l'auteur de cette page de cette erreur.

Si vous pensez qu'il s'agit d'une erreur du serveur, veuillez contacter le gestionnaire du site.

Error 404
127.0.0.1
05/18/11 17:59:46
Apache/2.2.16 (Win32) PHP/5.3.3

normal parce que j'ai pas mis interfaceUtmilieu non ?
0
the_jb Messages postés 731 Statut Membre 58
 
oui c'etait ça je l'ai corriger a la fin maintenant qu'il me dirige vers interfaceUtmilieu.php j'aimerai savoir comment faire pour mettre

" bienvenue $pseudoUt" // pour afficher son pseudo //

puis "nous avons besoin de votre aide ! veuillez choisir un film afin de le noter et le commenter" et la je met une liste déroulante avec tous les films que j'ai dans ma BDD puis un "input type=submit..." pour envoyer vers notation.php . comment je fais pour la liste déroulante avec tous les films dedans je sais déja que la liste se fait avec <select name=""><option value=""></option>
0
Utilisateur anonyme
 
Re, dsl, j'avais pas cocher la coche "suivre la discution"


Bon, premièrement:

$login = $_POST['Nomutilisateur];
$passe = $_POST['mdp'];

C'est pas top du tout ! pas sécurisé !

Pour ce qui est de $base_name webdesigner ne sais peut être pas que tu débute en php mais il faut définir la variable, exemple:
$base_name = "gestfilm"; // nom de ta base de donnée à laquelle tu souhaite te connecté.


Je reviens vers 20h30 pour le reste.
0
the_jb Messages postés 731 Statut Membre 58
 
dois je donc remplacer $base_name = "gestfilm"; par mysql_select_db($gestfilm); ??

Quelque chose qui ma bien fait rire : pour afficher le "bienvenue " $pseudoUt ça me met "bienvenue "nom_de_l'utilisateur" et pas le pseudo ... la je cherche pourquoi .. ça doit être au niveau du $_SESSION
0