Formulaire et base donnée XHTML MYSQL
2Max-
Messages postés
50
Statut
Membre
-
Alain_42 Messages postés 5413 Statut Membre -
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,
Il y a dans mon formulaire, des input type=radio.
Je voudrais savoir comment enregistrer le choix de l'utilisateur dans la Base de donnée MYSQL.
Merci.
--
Novice en PHP.
Expert en ambition.
Il y a dans mon formulaire, des input type=radio.
Je voudrais savoir comment enregistrer le choix de l'utilisateur dans la Base de donnée MYSQL.
Merci.
--
Novice en PHP.
Expert en ambition.
7 réponses
-
Salut,
dans la page cible de ton formulaire :
<?php
mysql_query("UPDATE nom_de_ta_table SET nom_du_champ = '". $_POST['name_du_radiobutton']."' WHERE condition"); ?> -
Re bonsoir, le script que tu m'as fournis ne fonctionne pas.
Peut-être que ça ne marche pas car il y a deux "mysql_query"
-
-
mysql_connect("", "", ""); mysql_select_db("jeu"); mysql_query("INSERT INTO membre VALUES('', '$rqt_login', '$rqt_password', '$rqt_email', '$rqt_nom', '$rqt_prenom', '$sexe', '".$_SERVER["REMOTE_ADDR"]."')"); mysql_query("UPDATE membre SET sexe = '". $_POST['sexe']."' WHERE sexe"); mysql_close();
Alors qu'est-ce qui ne vas pas dans mon code ?:/ -
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
mysql_connect("", "", "");
Déjà la tu te connectes à rien. Est-ce que tu l'as fait exprès pour ne pas mettre ces infos sur ccm? Ensuite il me faudrait le code de la page d'avant. Et le code de la page actuelle. -
Oui je l'ai fais exprès.
Sexe: <span class="optio"> <input type="radio" name="sexe" value="homme" id="homme" /> <label for="homme">Homme</label><br><br> <input type="radio" name="sexe" value="femme" id="femme" /> <label for="femme">Femme</label></span><br><br>
Code XHTML de inscription.php
if (isset($_POST['login']) AND isset($_POST['password']) AND isset($_POST['sexe'])) // Si les variables existent { if ($_POST['login'] != NULL AND $_POST['password'] != NULL AND $_POST['email'] != NULL AND $_POST['nom'] != NULL AND $_POST['prenom'] != NULL AND $_POST['sexe'] != NULL) // Si on a quelque chose à enregistrer { // D'abord, on se connecte à MySQL mysql_connect("**", "**", "**"); mysql_select_db("jeu"); // Ensuite on enregistre le message mysql_query("INSERT INTO membre VALUES('', '$rqt_login', '$rqt_password', '$rqt_email', '$rqt_nom', '$rqt_prenom', '$sexe', '".$_SERVER["REMOTE_ADDR"]."')"); mysql_query("UPDATE membre SET sexe = '". $_POST['sexe']."' WHERE sexe"); // On se déconnecte de MySQL mysql_close(); } else { echo '<center><span class="rouge_fonce">Il y a des champs vides.</span></center>'; } }
Code MYSQL de inscription.php
-
Salut,
$rqt_login
ou prends tu ces variables, si ce sont des valeurs postées il faudrait les récupérer
car si dans ta config php Register_global est à off ce qui est le cas par défaut, c'est obligatoire de les recupérer.
alors
$rqt_login=$_POST['rqt_login']; etc... avant ta requette
Ensuite pourquoi deux requettes:
mysql_query("INSERT INTO membre VALUES('', '$rqt_login', '$rqt_password', '$rqt_email', '$rqt_nom', '$rqt_prenom', '$sexe', '".$_SERVER["REMOTE_ADDR"]."')");
mysql_query("UPDATE membre SET sexe = '". $_POST['sexe']."' WHERE sexe");
la première insère les valeurs, alors inutile de venir ensuite modifier ce que tu viens juste d'insérer, d'autant plus que la deuxième est fausse
il faut une condition:
"UPDATE membre SET sexe = '". $_POST['sexe']."' WHERE sexe="'". $_POST['sexe']."'";
et là tu vois bien que tu remplace home par homme ou femme par femme
-
-
il faut penser avant tout a securiser ton site e utilisant mysql_real_escape_string(htmlspecialchars dans ton code car une simple injection SQL pourrait tout foutre pour ton site
merci