Page 1 sur 1
Affichage nom du membre
Posté : 17 juin 2007, 16:46
par Racktor
bonjour a tous !
J'ai un petit problème :
J'ai créé un page qui permet de se loger, si le speudo et le Mot de passe correspond a ceux qui son dans la BDD ils sont envoyé sur un page commune a tout le monde.
Dans cette page commune j'aimerai afficher des informations en fonction du membre (du speudo entré dans la page précédente).
J'aimerai par exemple afficher le speudo du membre qui se connecte en fonction du speudo entré.
Si j'arrive avec le speudo, je reprendrai la methode pour afficher les autres informations.
Merci pour vos réponses.
Posté : 17 juin 2007, 17:47
par gwendal
Le plus simple c'est un fois loggué d'atribuer une variable de sessions avec le nom de la personne logué comme cela tu l'affiche directement avec aussi son id dans la base données comme cela tu peux aller tirer dans la base de données les informations de la personne avec son id.
Posté : 17 juin 2007, 18:45
par Racktor
Bien je comprends ce que tu veux dire en théorie mais en pratique comment puis-je faire ce que tu me dis. J'ai bien un id, doit-il être complexe pour ne pas risquer des fuite ou alors il peut être simple, c'est a dire qu'il n'y a qu'un nombre, par exemple Racktor et son id le numéro 1.
Posté : 18 juin 2007, 10:30
par charabia
Jettes un oeil ici :
http://phpdebutant.org/article69.php
Il y a tout ce que tu recherches à faire.
Posté : 18 juin 2007, 11:24
par Racktor
merci charabia (j'aime bien ton pseudo^^) c'est tout a fait ce que je recherche
Edite :
J'ai une question :
Comment inclure le code session star() avec celui de log ?
Le code de session_start
Code : Tout sélectionner
session_start();
$loginOK = false; // cf Astuce
// On n'effectue les traitement qu'à la condition que
// les informations aient été effectivement postées
if ( isset($_POST) && (!empty($_POST['Pseudo'])) && (!empty($_POST['Mot de passe'])) ) {
extract($_POST); // je vous renvoie à la doc de cette fonction
// On va chercher le mot de passe afférent à ce login
$sql = "SELECT pseudo, email, pays, remarques, passe FROM membre".addslashes($login)."'";
$req = mysql_query($sql) or die('Erreur SQL : <br />'.$sql);
// On vérifie que l'utilisateur existe bien
if (mysql_num_rows($req) > 0) {
$data = mysql_fetch_assoc($req);
// On vérifie que son mot de passe est correct
if ($password == $data['passe']) {
$loginOK = true;
}
}
}
// Si le login a été validé on met les données en sessions
if ($loginOK) {
$_SESSION['pseudo'] = $data['pseudo'];
$_SESSION['passe'] = $data['passe'];
$_SESSION['remarques'] = $data['remarques'];
$_SESSION['pays'] = $data['pays'];
}
else {
echo 'Une erreur est survenue, veuillez réessayer !';
}
Le code de log
Code : Tout sélectionner
<?
require("protec/passe/conf.php3");
$db_link = mysql_connect($sql_serveur,$sql_user,$sql_passwd);
$requete=mysql_db_query($sql_bdd,"select * from membre where pseudo=\"$pseudo\" and passe=\"$passe\"",$db_link);
if(mysql_num_rows($requete)==0)
{
header("Location:$url_erreur");exit;
}
else
$destination=mysql_result($requete,$i,"destination");
{
$taille = 20;
$lettres = "abcdefghijklmnopqrstuvwxyz0123456789";
srand(time());
for ($i=0;$i<$taille;$i++)
{
$id.=substr($lettres,(rand()%(strlen($lettres))),1);
}
$requete=mysql_db_query($sql_bdd,"update membre set id=\"$id\" where pseudo=\"$pseudo\" and passe=\"$passe\"",$db_link);
header("Location:$destination?id=$id");
}
mysql_close($db_link);
?>