Se connecter à son compte
Absot
Messages postés
819
Statut
Membre
-
Nirvv Messages postés 26 Statut Membre -
Nirvv Messages postés 26 Statut Membre -
Bonjour, je suis en train de créer un site internet où les personnes peuvent s'y inscrire mais après comment faire pour qu'ils puissent s'y connecter?
Quand ils s'enregistrent, il y a une requête qui les insert dans une BDD et après j'ai pensé à qui par exemple vérifie que le pseudo et le mot de passe correspondent au même id mais peut-être y a-t-il une autre solution?
Quand ils s'enregistrent, il y a une requête qui les insert dans une BDD et après j'ai pensé à qui par exemple vérifie que le pseudo et le mot de passe correspondent au même id mais peut-être y a-t-il une autre solution?
A voir également:
- Se connecter à son compte
- Se connecter à gmail sur téléphone - Guide
- Facebook se connecter à un autre compte - Guide
- Se connecter à ma boite hotmail - Guide
- Comment connecter chromecast à la télé - Guide
- Se connecter sans compte microsoft windows 10 - Guide
6 réponses
quand il se connecte tu prend par exemple leurs nom + mdps
$nom_du_visiteur=$_GET['nom_du_visiteur'];
$mdps_du_visiteur=$_GET['mdps_du_visiteur'];
tu fais ta requette pour voir si ils sont dans ta base
$query = mysql/postgre/peut importequery(SELECT* FROM ta_table WHERE nom='".$nom_du_visiteur."' AND mdps='".$mdps_du_visiteur."');
ensuite tu fais un fetch_array pour reprendre la valeur de ta requette
la tu fais un cookie avec le nom de la personne
puis tu balance un rafraichisement automatique de la page pour que ton cookie sois pris en compte
echo"<META http-equiv=\"refresh\" content=\"0; URL=https://www.google.fr/?gws_rd=ssl\">";
puis pour ton contenu
if(!empty($_COOKIE['nom_de_la_personne'])){
le contenu de ton site
}else{
veuillez vous connecter
}
$nom_du_visiteur=$_GET['nom_du_visiteur'];
$mdps_du_visiteur=$_GET['mdps_du_visiteur'];
tu fais ta requette pour voir si ils sont dans ta base
$query = mysql/postgre/peut importequery(SELECT* FROM ta_table WHERE nom='".$nom_du_visiteur."' AND mdps='".$mdps_du_visiteur."');
ensuite tu fais un fetch_array pour reprendre la valeur de ta requette
la tu fais un cookie avec le nom de la personne
puis tu balance un rafraichisement automatique de la page pour que ton cookie sois pris en compte
echo"<META http-equiv=\"refresh\" content=\"0; URL=https://www.google.fr/?gws_rd=ssl\">";
puis pour ton contenu
if(!empty($_COOKIE['nom_de_la_personne'])){
le contenu de ton site
}else{
veuillez vous connecter
}
Va falloir que je relise ça plusieurs fois.. ^^
Je viens de regarde le code source de cette page et je n'ai pas vu de <?php session_start(); ?>, comment ça se fait alors qu'il y a forcément des sensations?
Je viens de regarde le code source de cette page et je n'ai pas vu de <?php session_start(); ?>, comment ça se fait alors qu'il y a forcément des sensations?
<!DOCTYPE html PUBLIC " -//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta name="HandheldFriendly" content="True" /> <link rel="alternate" media="handheld" href="se connecter a son compte?" /> <title>Se connecter à son compte</title> <meta name="ROBOTS" content="index,follow" />
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Normalement quand on fait clique droit avec firefox puis "code source de la page", une nouvelle fenêtre s'ouvre et on voit ainsi le code de la page mais quand je le fais pour cette page, je ne vois pas <?php session_start(); ?> alors qu'il y a forcément des sessions sur ce site pour éviter de se reconnecter tout le temps?
Serait-ce parce que le code afficher commence toujours par le "doctype" donc ce qui le précède ne s'affiche pas?
Petit problème sinon, j'ai l'impression que ma requête sql pour vérifier si la personne qui se connecte existe dans ma BDD n'est pas bonne puisque j'ai beau écrire n'importe quoi, ça passe.. :/
Voici mon code:
Serait-ce parce que le code afficher commence toujours par le "doctype" donc ce qui le précède ne s'affiche pas?
Petit problème sinon, j'ai l'impression que ma requête sql pour vérifier si la personne qui se connecte existe dans ma BDD n'est pas bonne puisque j'ai beau écrire n'importe quoi, ça passe.. :/
Voici mon code:
$query = "SELECT* FROM client WHERE mail='$mail' AND mdp='$mdp'"; /* execution de la requete */ $result = mysql_query($query) or die(mysql_error($query)); /* Récupération de la requête dans un tableau numérique */ $row = mysql_fetch_array($result, MYSQL_NUM); /* Création du cookie */ setcookie($mail, $row);
Tu devrais quand même savoir qu'on ne peut pas voir le code php dans un code source de page web. Donc tu risques pas de voir le <?php session_start(); ?>, tout comme le reste du code php.
Pour récuperer les données envoyés par l'utilisateur, tu peux faire comme a dit luc648 mais utilise la method POST si tu utilises un formulaire. Si tu fais un formulaire de connexion, met method="post" et tu récupere le pseudo et pass entré : $pseudo = $_POST['pseudo'] et $pass = $_POST['pass'].
Ensuite tu fais une requete SQL comme t'avais fait :
$requete = mysql_query("SELECT pseudo, pass FROM membres WHERE pseudo='$pseudo' AND pass='$pass'");
(J'ai préféré utiliser SELECT pseudo, pass que SELECT *, c'est mieux en général, mais si t'as un problème, utilise * alors ^^).
Ensuite : $donnees = mysql_fetch_array($requete);
Et tu testes avec la fonction mysql_num_rows si le resultat retourne plus de 0, ce qui signifie que le pseudo/pass correspond a un pseudo/pass dans la base :
Faut bien sur que tu ais mis <?php session_start(); ?> au début de ton code.
Si tu fais une redirection comme dans mon exemple, sur la page accueil.php, tu pourras utiliser $_SESSION['pseudo'] pour afficher le pseudo du visiteur (ça sera égal a son pseudo de connexion).
Voila j'espere que t'as un peu plus compris ^^'
Bonne continuation
Pour récuperer les données envoyés par l'utilisateur, tu peux faire comme a dit luc648 mais utilise la method POST si tu utilises un formulaire. Si tu fais un formulaire de connexion, met method="post" et tu récupere le pseudo et pass entré : $pseudo = $_POST['pseudo'] et $pass = $_POST['pass'].
Ensuite tu fais une requete SQL comme t'avais fait :
$requete = mysql_query("SELECT pseudo, pass FROM membres WHERE pseudo='$pseudo' AND pass='$pass'");
(J'ai préféré utiliser SELECT pseudo, pass que SELECT *, c'est mieux en général, mais si t'as un problème, utilise * alors ^^).
Ensuite : $donnees = mysql_fetch_array($requete);
Et tu testes avec la fonction mysql_num_rows si le resultat retourne plus de 0, ce qui signifie que le pseudo/pass correspond a un pseudo/pass dans la base :
if (mysql_num_rows($requete) > 0)
{
// L'utilisateur s'est bien connecté, donc tu peux créer une session par exemple, et rediriger l'utilisateur sur une autre page avec "header location" :
$_SESSION['pseudo'] = $pseudo;
header('location:accueil.php');
}
Faut bien sur que tu ais mis <?php session_start(); ?> au début de ton code.
Si tu fais une redirection comme dans mon exemple, sur la page accueil.php, tu pourras utiliser $_SESSION['pseudo'] pour afficher le pseudo du visiteur (ça sera égal a son pseudo de connexion).
Voila j'espere que t'as un peu plus compris ^^'
Bonne continuation