Espace membre PHP/MySQL
Résolu/Fermé
avion-f16
Messages postés
19250
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 décembre 2024
-
21 août 2008 à 01:22
houssem404 Messages postés 5 Date d'inscription mardi 27 décembre 2011 Statut Membre Dernière intervention 29 décembre 2011 - 27 déc. 2011 à 17:58
houssem404 Messages postés 5 Date d'inscription mardi 27 décembre 2011 Statut Membre Dernière intervention 29 décembre 2011 - 27 déc. 2011 à 17:58
A voir également:
- Espace membre PHP/MySQL
- Espace insécable word - Guide
- Libérer espace gmail - Guide
- Membre indisponible vinted - Guide
- Easy php - Télécharger - Divers Web & Internet
- Espace stockage google - Guide
9 réponses
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
21 août 2008 à 10:03
21 août 2008 à 10:03
Salut,
donc si on part du principe que ton formulaire de connexion et de ce type :
Ben la page connexion.php pourrai ressembler à ceci :
A vrai dire, j'ai pas testé ce code donc je ne te promet rien mais bon ... il peut marcher ! ^^
A+
Gaerebut
donc si on part du principe que ton formulaire de connexion et de ce type :
<form action = "connexion.php" method="post"> Login <input type="text" name="login" /><br /> Mot de passe <input type="password" name="mdp" /><br /><br /> <input type="submit" value="Se connecter" /> </form>
Ben la page connexion.php pourrai ressembler à ceci :
<?php session_start;// ne pas oublier avant tout code html si on attaque les session if (($_GET['action'])=='deconnection' && isset($_SESSION['login']) && isset($_SESSION['mdp']))//Si on va sur cette page mais que les sessions 'login' et 'mdp' existe déjà, c'est que l'on veut se deconnecter ... donc action ! ^_^' { session_destroy();// on se déconnecte de la session echo '<meta http-equiv="refresh" content="3;URL=index.php">'; echo '<center><font color=red><b><br>Vous vous êtes bien déconnecté</b><br /><br />Vous allez être redirigé dans 3 secondes</font><br /><br /><a href="index.php">Ne pas attendre</a></center>'; } else if (!isset($_SESSION['login']) && !isset($_SESSION['mdp']))//Sinon, si ces sessions n'existent pas, c'est qu'on veut se connecter ... donc action ! ^_^' { if (isset($_POST['login']) AND isset($_POST['mdp'])) // Si les variables existent { mysql_connect(_DBHOST,_DBUSER,_DBPASS);//Identifiant à remplacer mysql_select_db(_DBNAME);//Nom de la base à remplacer aussi $login= mysql_real_escape_string(htmlspecialchars($_POST['login']));//Sécurité au cas ou ! $mdp = mysql_real_escape_string(htmlspecialchars($_POST['mdp']));//Sécurité au cas ou ! $reponse = mysql_query("SELECT * FROM membres WHERE login='$login' AND mdp='$mdp'");// On fait le tour de la base pour voir si le login entré existe et a pour mot de passe celui entré $donnees = mysql_fetch_array($reponse);//on créé un petit tableau des résultats (normalement, il y en a qu'un si t'as tout bien configuré lors de l'inscription) if (($donnees['login']) AND ($donnees['mdp']))//Si on a un resultat ... on a plus qu'a créer les session { $_SESSION['login'] = $login; // Session contenant le login du membre $_SESSION['mdp'] = md5($mdp);// Session contenant le mot de passe hashé en md5 (par mesure de sécurité et surtout de confidentialité ;) ) $_SESSION['email'] = $donnees['email'];// Session contenant l'e-mail du membre //Donc ici, tu peux plus ou moins mettre des sessions de ce que tu veux et plus ou moins autant que tu veux. // L'option du cookies n'est pas dévellopé ici car tu ne l'a pas demandé :p lol echo '<meta http-equiv="refresh" content="3;URL=index.php">'; echo '<center><font color=red><b><br>Vous êtes bien identifié</b><br /><br />Vous allez être redirigé dans 3 secondes</font><br /><br /><a href="index.php">Ne pas attendre</a></center>'; } else { echo '<center><font color=red><b><br>Erreur d\'authentification !</b><br />Votre login ou votre mot de passe est faux</font><br><br><a href="index.php">Retour</a></center>'; } mysql_close(); } } else { echo '<center><font color=red><b><br>Erreur !</b><br />Vous ne pouvez pas aller sur cette page, vous êtes déjà connecté.</font><br><br><a href="Javascript:history.go(-1)">Retour</a></center>'; } ?>
A vrai dire, j'ai pas testé ce code donc je ne te promet rien mais bon ... il peut marcher ! ^^
A+
Gaerebut
ShadowRevenge
Messages postés
146
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
16 juillet 2009
13
21 août 2008 à 09:59
21 août 2008 à 09:59
Tu fais un truc du genre :
pour le formulaire :
<form method='post' action='connexion.php'>
<p><input type='text' name='pseudo' /><br/>
<input type='password' name='mdp' /><br/>
<input type='submit' value='Envoyer' />
</p></form>
et pour la page connexion.php :
if(isset($POST['pseudo']) and isset($_POST['mdp']))
{
$reponse = mysql_query(" SELECT * FROM membres WHERE pseudo=".$_POST['pseudo']);
$donnees = mysql_fetch_array($reponse);
if($donnees['mdp'] == $_POST['mdp'])
{
$_SESSION['pseudo'] = $donnees['pseudo'];
$_SESSION['mdp'] = $donnees['pseudo'];
......... ect
echo"<p>Vous êtes maintenant logué !</p>";
}
else
{
echo"<p>Erreur blabla...</p>";
}
}
voila je lai fait a larrache ca doit surement pas marcher mais ca te donne une idee ^^
pour le formulaire :
<form method='post' action='connexion.php'>
<p><input type='text' name='pseudo' /><br/>
<input type='password' name='mdp' /><br/>
<input type='submit' value='Envoyer' />
</p></form>
et pour la page connexion.php :
if(isset($POST['pseudo']) and isset($_POST['mdp']))
{
$reponse = mysql_query(" SELECT * FROM membres WHERE pseudo=".$_POST['pseudo']);
$donnees = mysql_fetch_array($reponse);
if($donnees['mdp'] == $_POST['mdp'])
{
$_SESSION['pseudo'] = $donnees['pseudo'];
$_SESSION['mdp'] = $donnees['pseudo'];
......... ect
echo"<p>Vous êtes maintenant logué !</p>";
}
else
{
echo"<p>Erreur blabla...</p>";
}
}
voila je lai fait a larrache ca doit surement pas marcher mais ca te donne une idee ^^
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
10 juin 2009 à 17:30
10 juin 2009 à 17:30
Salut,
Ouaaa, très explicite t'as demande !
Et au fait tu connais Bonjour ou salut???
Tu connais merci ???
Tu connais aurevoir ou a+ ???
Merci de ré-itérer :)
A+
Gaerebut
Ouaaa, très explicite t'as demande !
Et au fait tu connais Bonjour ou salut???
Tu connais merci ???
Tu connais aurevoir ou a+ ???
Merci de ré-itérer :)
A+
Gaerebut
ShadowRevenge
Messages postés
146
Date d'inscription
lundi 11 août 2008
Statut
Membre
Dernière intervention
16 juillet 2009
13
21 août 2008 à 10:04
21 août 2008 à 10:04
y'en a qui ont plus de courage que moi :p
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
gaerebut
Messages postés
1017
Date d'inscription
mardi 30 octobre 2007
Statut
Membre
Dernière intervention
22 novembre 2013
171
21 août 2008 à 10:05
21 août 2008 à 10:05
Lol
j'ai écrit le miens et t'as posté le tient pendant que j'écrivais ... :p
Hihihi
j'ai écrit le miens et t'as posté le tient pendant que j'écrivais ... :p
Hihihi
avion-f16
Messages postés
19250
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 décembre 2024
4 505
21 août 2008 à 14:58
21 août 2008 à 14:58
Merci beaucoup pour vos réponse mais j'ai trouvé tout seule sur cette page. J'invite tous ceux qui veulent faire un espace membre à aller sur le lien donné.
Je vais mettre le statut résolu et vous remercie tous pour vos réponse
Je vais mettre le statut résolu et vous remercie tous pour vos réponse
Salut, moi aussi j'ai un probleme:
<?php
?>
<?php
if(isset($_POST['connect'])) // Si on a cliqué sur le bouton le script se lance
{
require ('configuration.php');
$acct = mysql_real_escape_string($_POST['compte']); // On protège le serveur MySQL contre toutes failles pour une injection SQL
$mdp = mysql_real_escape_string($_POST['pass']); // On protège le serveur MySQL contre toutes failles pour une injection SQL
mysql_select_db($mysql['realmd'] , $connexion); // On se connecte à la DB des cpmptes
//On vérifie si le compte est banni pas sûr du tout par contre
$req = mysql_query("SELECT locked FROM 'account' WHERE username='$acct'");
$check = mysql_fetch_array($req);
if ($check == '1')
{
die ('Impossible de se connecter, vous avez été bannis du serveur !!!
');
}
// On vérifie que le compte existe
$req2 = mysql_query("SELECT * FROM 'account' WHERE username='$acct'");
$check2 = mysql_num_rows($req2);
if ($check2 == 0)
{
die ('Veuiller reeseyer, le compte n\'existe pas !');
}
//On vérifie que le mot de passe est bon pour le compte
// Pas sûr du cryptage du mot de passe
$req3 = mysql_query("SELECT * FROM 'account' WHERE username='$acct' AND sha_pass_hash= SHA1(CONCAT(UPPER('$acct'),':',UPPER('$mdp')))");
$check3 = mysql_num_rows($req3);
if ($check3 == 0)
{
die ('Veuiller reeseyer, le compte est incorect!');
}
$req4 = mysql_query("SELECT * FROM 'account' WHERE username='$acct' AND sha_pass_hash='$crypt_pass' AND gmlevel >= '1'"); // Requête de vérification MJ
$check4 = mysql_num_rows($req4);
$req5 = mysql_query("SELECT * FROM 'account' WHERE username='$acct' AND sha_pass_hash='$crypt_pass' AND gmlevel = '3'"); // Requête de vérification Admin
$check5 = mysql_num_rows($req5);
if ($check4 == 1)
{
$_SESSION['MJ'] = 1; // Si la requête ci-dessus est vrai , on rend vrai la superglobale pour les MJ
}
if ($check5 == 1)
{
$_SESSION['ad'] = 1; // Si la requête ci-dessus est vrai , on rend vrai la superglobale pour l'accès au panel admin
}
$_SESSION['logged'] = 1; // On rend vrai la superglobale de connexion
$_SESSION['compte'] = stripslashes($acct); // On met le nom de compte dans une variable session pour une utilisation prochaine
header("location: membre.php?id=1"); // On redirige vers l'espace membre
}
else
{
?>
<br>
<form method="post" action="connexion.php">
<tr>
<td> </td><td><input type="text" size="10" name="compte" value="compte" onclick="effacer(this, 'compte');" onblur="restaurer(this, 'compte');" src="up.png" /></td>
</tr>
<tr>
<td> </td><td><input type="password" size="10" name="pass" onclick="effacer(this, 'motdepasse');" onblur="restaurer(this, 'motdepasse');" value="motdepasse" src="up.png" /></td>
</tr>
<tr>
<input type="submit" value="Connexion" name="connect" style="background-image:url(images/topbar.jpg)" />
</form>
<?php
}
?>
La connexion marche, mais ce que je voudrai c'est un espace membre.Car la une fois connecter sa me redirige vers un espace membre que j'ai fait, mais pour chaque membres, il peu y avoir certaines choses en plus ou en moin...
merci de m'aider s'il vous plait!!!!
<?php
?>
<?php
if(isset($_POST['connect'])) // Si on a cliqué sur le bouton le script se lance
{
require ('configuration.php');
$acct = mysql_real_escape_string($_POST['compte']); // On protège le serveur MySQL contre toutes failles pour une injection SQL
$mdp = mysql_real_escape_string($_POST['pass']); // On protège le serveur MySQL contre toutes failles pour une injection SQL
mysql_select_db($mysql['realmd'] , $connexion); // On se connecte à la DB des cpmptes
//On vérifie si le compte est banni pas sûr du tout par contre
$req = mysql_query("SELECT locked FROM 'account' WHERE username='$acct'");
$check = mysql_fetch_array($req);
if ($check == '1')
{
die ('Impossible de se connecter, vous avez été bannis du serveur !!!
');
}
// On vérifie que le compte existe
$req2 = mysql_query("SELECT * FROM 'account' WHERE username='$acct'");
$check2 = mysql_num_rows($req2);
if ($check2 == 0)
{
die ('Veuiller reeseyer, le compte n\'existe pas !');
}
//On vérifie que le mot de passe est bon pour le compte
// Pas sûr du cryptage du mot de passe
$req3 = mysql_query("SELECT * FROM 'account' WHERE username='$acct' AND sha_pass_hash= SHA1(CONCAT(UPPER('$acct'),':',UPPER('$mdp')))");
$check3 = mysql_num_rows($req3);
if ($check3 == 0)
{
die ('Veuiller reeseyer, le compte est incorect!');
}
$req4 = mysql_query("SELECT * FROM 'account' WHERE username='$acct' AND sha_pass_hash='$crypt_pass' AND gmlevel >= '1'"); // Requête de vérification MJ
$check4 = mysql_num_rows($req4);
$req5 = mysql_query("SELECT * FROM 'account' WHERE username='$acct' AND sha_pass_hash='$crypt_pass' AND gmlevel = '3'"); // Requête de vérification Admin
$check5 = mysql_num_rows($req5);
if ($check4 == 1)
{
$_SESSION['MJ'] = 1; // Si la requête ci-dessus est vrai , on rend vrai la superglobale pour les MJ
}
if ($check5 == 1)
{
$_SESSION['ad'] = 1; // Si la requête ci-dessus est vrai , on rend vrai la superglobale pour l'accès au panel admin
}
$_SESSION['logged'] = 1; // On rend vrai la superglobale de connexion
$_SESSION['compte'] = stripslashes($acct); // On met le nom de compte dans une variable session pour une utilisation prochaine
header("location: membre.php?id=1"); // On redirige vers l'espace membre
}
else
{
?>
<br>
<form method="post" action="connexion.php">
<tr>
<td> </td><td><input type="text" size="10" name="compte" value="compte" onclick="effacer(this, 'compte');" onblur="restaurer(this, 'compte');" src="up.png" /></td>
</tr>
<tr>
<td> </td><td><input type="password" size="10" name="pass" onclick="effacer(this, 'motdepasse');" onblur="restaurer(this, 'motdepasse');" value="motdepasse" src="up.png" /></td>
</tr>
<tr>
<input type="submit" value="Connexion" name="connect" style="background-image:url(images/topbar.jpg)" />
</form>
<?php
}
?>
La connexion marche, mais ce que je voudrai c'est un espace membre.Car la une fois connecter sa me redirige vers un espace membre que j'ai fait, mais pour chaque membres, il peu y avoir certaines choses en plus ou en moin...
merci de m'aider s'il vous plait!!!!
avion-f16
Messages postés
19250
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 décembre 2024
4 505
Modifié par avion-f16 le 27/06/2010 à 14:15
Modifié par avion-f16 le 27/06/2010 à 14:15
Salut Jak.
Tu peux créer ton propre topic, c'est gratuit (et l'inscription aussi).
Place ton code dans la balise "code" de CCM pour conserver l'indentation.
Et puis si tu pouvais mieux expliquer ton problème, ça serait bien.
Edit: je me rends compte que c'est déjà fait, désolé.
Tu peux créer ton propre topic, c'est gratuit (et l'inscription aussi).
Place ton code dans la balise "code" de CCM pour conserver l'indentation.
Et puis si tu pouvais mieux expliquer ton problème, ça serait bien.
Edit: je me rends compte que c'est déjà fait, désolé.
niconovice
Messages postés
954
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
3 mars 2014
86
Modifié par niconovice le 23/01/2011 à 17:39
Modifié par niconovice le 23/01/2011 à 17:39
Salut F16, j'arrive apparemment trop tard mais regarde ce site:http://www.agents-co.fr je crois que c'est ce script que tu recherches, si tu le veux, préviens moi, le temps de te le mettre en forme et je te l'envoi :)
Si tu cherches un bon casse tête, mets toi à l'informatique !
Si tu cherches un bon casse tête, mets toi à l'informatique !
avion-f16
Messages postés
19250
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 décembre 2024
4 505
23 janv. 2011 à 18:34
23 janv. 2011 à 18:34
Salut. Ce topic date de mes débuts en webmastering :D
C'est d'ailleur un de mes rares sujets sur CCM.
Tu arrives avec beaucoup de retard. Aujourd'hui, faire un espace membre, c'est quelque-chose de très basique pour moi.
Merci quand même pour ta réponse.
C'est d'ailleur un de mes rares sujets sur CCM.
Tu arrives avec beaucoup de retard. Aujourd'hui, faire un espace membre, c'est quelque-chose de très basique pour moi.
Merci quand même pour ta réponse.
niconovice
Messages postés
954
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
3 mars 2014
86
Modifié par niconovice le 23/01/2011 à 18:53
Modifié par niconovice le 23/01/2011 à 18:53
Dsl lol xD j'étais content de pouvoir te rendre l'appareil, dommage :D
ça m'étonnait aussi....;)
ça m'étonnait aussi....;)
avion-f16
Messages postés
19250
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
22 décembre 2024
4 505
23 janv. 2011 à 19:49
23 janv. 2011 à 19:49
Si tu le désires, tu peux quand même poster les sources pour les futurs lecteurs de ce sujet :)
niconovice
Messages postés
954
Date d'inscription
lundi 10 novembre 2008
Statut
Membre
Dernière intervention
3 mars 2014
86
23 janv. 2011 à 19:55
23 janv. 2011 à 19:55
c'était surtout pour te rendre l'appareil puisque tu as aidé beaucoup de monde ici et en plus de ça ce forum est mal optimisé pour les long script se serait illisible...
23 janv. 2011 à 16:23
m'ecrire a benoit1966@hotmail.com
27 déc. 2011 à 17:58