Récupérer données formulaire PHP dans MySQL [Résolu/Fermé]

Signaler
-
 orel-hardware -
Bonjour,
j'ai un truc tout bête à faire mais je n'ai que peu de bases en PHP et je n'arrive pas à reproduire ce qui est expliqué dans les tutos sur internet, je viens donc vous demander de m'expliquer très clairement comment je peux m'y prendre pour récupérer toutes les valeurs dans le formulaire html et les rentrer dans une base de données. (que mettre dans quelle page etc)
Merci beaucoup d'avance!


6 réponses

Voilà un petit cour rapide :
Imaginons que tu veuilles récupérer une email et un mot de passe via un formulaire et les enregistrées :

HTML -> index.php
<form action="register.php" method="post">
Email : <input type="text" name="email">
Mot de passe : <input type="password" name="password">
<input type="submit" value="Valider">


Ensuite la page de traitement :
PHP -> register.php

<?php
if(isset($_POST) and !empty($_POST['email']) and !empty($_POST['password']{
$bdd = mysql_connect(127.0.0.1,"root","");
$bdd = mysql_select_db("ma-bdd");

$sql = 'INSERT INTO 'utilisateur' ('email','password') VALUES '.$_POST['email'].', '.<bold>sha1</bold>($_POST['password']).'';
mysql_query($sql);

}


Petites informations :
Il te faut créer la table 'utilisateur' dans ta base de données.
Ensuite, tu peux passer par mysql ou par PDO, ici c'est un exemple avec mysql.
Autre remarque : tu peux voir que le mot de passe envoyé dans le formulaire à été sécurisé avec le sha1.

Il faut donc créer un champ "password" de type varchar de 255 caractères.

Si j'ai oublié quelque chose ou si tu as d'autres questions, n'hésites pas
5
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 57036 internautes nous ont dit merci ce mois-ci

trés bien expliquer , merci bcp !
Messages postés
58
Date d'inscription
samedi 17 octobre 2015
Statut
Membre
Dernière intervention
23 octobre 2016
10
ok je sais que ça fait longtemps ce post, mais j'ai un problème, j'ai fait exactement comme tu as dit et il me dit :
Parse error: syntax error, unexpected 'utilisateur' (T_STRING) in /cible.php on line 28

cette ligne étant la ligne :
$sql = 'INSERT INTO 'utilisateur' ('email','password') VALUES '.$_POST['email'].', '.sha1($_POST['password']).'';


Merci de la réponse si quelqu'un suit toujours cette discussion.

On les met ou l'identifiants, le mot de passe et le nom de la base de données ?
En fait, je n'arrive même pas à juste passer les valeurs sur la deuxième page...J'ai pourtant fait le necessaire:
<form action="page2.php" method="post"> 
... 
<input type="submit" name="valider"> 

et sur la deuxième page: 

if (!empty($_POST['valider'])) 
{ 
$nom = $_POST['nom']; 
} 


mais il ne reconnait pas la variable sur la deuxième page. De plus, le bouton ne redirige pas vers la deuxième.
Merci!

EDIT: est-ce que je peux enregistrer les infos dans la BDD directement depuis la page qui contient le form?
Messages postés
1508
Date d'inscription
lundi 8 mars 2004
Statut
Membre
Dernière intervention
10 octobre 2015
264
Salut,

Commence par nous montrer ce que tu as tenté de faire, et on te dira quelles sont tes erreurs.
Oui pardon:

Page qui contient le formulaire:
<form name="infos" action="validation_groupe.php" method="post"> 
<label for="dpt"><i><b>Département: </b></i></label><input type="text" id="dpt" /><br /> 

...

<center><input type="submit" value="Inscris moi!"></center> 

</form>




Et après je crois qu'il faut mettre dans ' action="" ' une page qui va recupérer les infos non?
du style:
try 
{ 
$bdd = new PDO('mysql:host=localhost;dbname=facegroup', 'root', ''); 
} 
catch(Exception $e) 
{ 
die('Erreur : '.$e->getMessage()); 
} 
$bdd->exec('INSERT INTO Accounts(type_compte, nom, ...) VALUES(:type_compte, :nom, ...)'); 





Merci!
Tout d'abord, merci de ta réponse,
je ne peux pas tester l'entrée des valeurs dans la base de données car je n'arrive pas à la sauvegarder dans le bon dossier x] t'inquiète pas pour ça.
D'après ce que j'ai essayé, le bouton ne redirige nulle part, donc je ne vois pas de résultat apparant, je vous tiens au courant!
Merci
J'ai tout testé, ça marche nickel, merci beaucoup benji :)