Se connecter / S'enregistrer
Votre question

[php et SQL] comment fait t-on pour enregistré...

Tags :
  • Sql
  • Programmation
Dernière réponse : dans Programmation
25 Mars 2006 12:14:19

Bonjour,
Je fait un formulaire d'inscription simple seulement avec une demande de pass. Quand je cliquerai sur le bouton "envoyer" je veux que sa enregistre la donnée dans ma base mysql. Je sais qu'il faut du php et une requete sql mais je voulai savoir si c'est possible et si oui comment.
Merci d'avance.

Autres pages sur : php sql fait enregistre

25 Mars 2006 12:20:16

INSER into nomtable( var1, var2, var3) VALUES($var1, $var2, $var3)

PS :
- Je ne sais plus si il faut des '' pour les $var.
- Il faut bien que apres le nom de la table tu déclares tous les champs qu'elle contient. ;-)

Juste une info, t'as interêt à faire attention en insérant les $var dans ta BDD. Gaffe à la sécurité^^ :-D ;-) :-P

EDIT : Dsl je n'avais pas vu que tu demandais un seul champs Pass. Dans ce cas la tu n'as que seule $var <=> $pass
25 Mars 2006 12:20:49

phpdebutant.org
Contenus similaires
25 Mars 2006 12:23:50

Donc si j'ai tout compris, je cree un BDD avec une table par exemple nommée: password
Dedans je met les champs:
Id
Mot de passe
Quand quelqu'un s'inscrit il met son mot de passe.
On ajoute à la base, un id et le mot de passe qu'il à rentré.
Pour se connecter il indique son mot de passe: il est bon, on affiche la page, il est mauvais, on affiche pas la page.

Explique moi ton truc sur la sécurité, j'ai pas compris.
25 Mars 2006 12:31:16

Merci, j'ai compris le script mais dedans, la requete sql je ne l'a comprend pas.
Le php j'ai tout compris mais le sql...
Voila la partie du code qui me bloque:

  1. // On va chercher le mot de passe afférent à ce login
  2. $sql = "SELECT pseudo, age, sexe, ville, mdp FROM user WHERE login = '".addslashes($login)."'";
  3. $req = mysql_query($sql) or die('Erreur SQL :
  4. '.$sql);


Dites mois(svp) ce qu'il doit y avoir dans select et après FROM.
25 Mars 2006 12:44:04

1/mysql_fetch_array plus simple

$sql=mysql_query("SELECT pseudo, age sexe, mdp FROM user WHERE login="$login");

$req= mysql_fetch_array($sql);

2/
.addslashes($login) ne jamais faire comme ça JAMAIS.

récupère tes variables et imposent les avant toute ouverture de la BDD, c'est à dire :

$login= addslashes(htmlentities($_POST['login']));
etc.....

3/ Le die est je trouve inutile dans ton exemple

4/ PLutôt qu'imposer toutes tes variables séparément, déclare une fonction dans un fichier fonction.php qui se chargera de faire le travail à ta place.
Il ne te restera plus qu'à utiliser un "require" en début de ta page pour "l'inclure".





25 Mars 2006 12:50:18

Donc si je veux le mot de passe je fait:

$sql=mysql_query("SELECT mot de passe FROM c quoi ici? WHERE c koi ici? );

Je sais, enfin je crois que dans un des deux il y a le nom de la BDD. Enfin explique mois stp.
25 Mars 2006 13:09:47

Citation :

$sql=mysql_query("SELECT mot de passe FROM c quoi ici? WHERE c koi ici? );


Après FROM tu met le nom de ta table , attention pas le nom de ta base.

Ce qui implique que avant de faire un mysql_query tu te soit connecté à la BDD :

mysql_connect("localhost", "root", "");
mysq_select_db("lenomdetabase");

(Ce sont les paramètres par defaut de easyphp)
25 Mars 2006 13:13:58

et après WHERE ?
25 Mars 2006 13:23:26

Bon je t'explique :

Tu as un champs de texte, dans ce champs de texte tu vas entrer ton mdp et ton login.

Donc sur l'URL de destination tu vas récupérer $_POST['login'] et $_POST['mdp']. Tu va donc les insérer dans 2variables :

  1. <?
  2. $login = htmlentities(addslashes($_POST['login']));
  3. $mdp = htmlentities(addslashes($_POST['mdp']));
  4. ?>


Donc ensuite tu vas vérifier si les données que tu as récupérer sont vraies (si les mdp et le login entrés éxistent et si ils correspondent bien entre eux)

1/ Tu te connectes à la BDD
  1. <?
  2. mysql_connect("localhost", "root", "");
  3. mysql_select_db("nomdetatable");
  4.  
  5. $sql = mysql_query("SELECT mot_passe FROM membres WHERE login='".$login."'");
  6. $req = mysql_fetch_array($sql);
  7.  
  8. if($req['mdp'] == $mdp){
  9. ?>
  10.  
  11. //Si les mdp est bon et le log aussi tu fais ce que tu veux(tu peux afficher une page par ex)
  12.  
  13. <?
  14. }else{
  15. //Si le mdp est mauvais
  16. echo 'Mot de passe éronnés';
  17. }


Vaudrait mieux que tu reprennes à 0 sql
25 Mars 2006 13:27:14

Encore une erreur évitable ApoloGie !

$sql=mysql_query("SELECT FROM membres WHERE login="$login");
te renverra une erreur !
25 Mars 2006 13:29:40

je sais je la corrigeai la
25 Mars 2006 13:32:42

Il faut faire sa je crois:

$sql=mysql_query("SELECT * FROM membres WHERE login="$login");

Dans ton code Apologie il verifie le mot de passe mais pas le login, c'est normale?
25 Mars 2006 13:33:49

Raté ah_ah_ah, c'est une question de guillemets.

EDIT : enfin oui, le * n'est pas de trop.
25 Mars 2006 13:36:06

Le login je le vérif, relis la suite du code ;-)
25 Mars 2006 13:44:31

ok. $sql=mysql_query("SELECT FROM membres WHERE login="$login");
après WHERE, login="$login", c'est pour faire quoi?
25 Mars 2006 14:09:19

C'est pour trouver si le login qui a été entré éxiste bel et bien. Tu va pas autorisé quelqu'un à se connecter à ton site avec un login qui n'éxiste pas ..... Ca serait stupide ;-)

Edit : Le code n'est pas entier c'est à toi de le complèter :-D
25 Mars 2006 15:00:26

ok, pour créer le login et pass, dans le php et le sql, on fait quoi? c'est quoi la requète?
Merci d'avance.
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS