Formulaire PHP/My SQL
Résolu/Fermé
94uaehd
Messages postés
49
Date d'inscription
lundi 29 juin 2009
Statut
Membre
Dernière intervention
18 décembre 2010
-
22 oct. 2009 à 18:59
94uaehd Messages postés 49 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 18 décembre 2010 - 23 oct. 2009 à 18:15
94uaehd Messages postés 49 Date d'inscription lundi 29 juin 2009 Statut Membre Dernière intervention 18 décembre 2010 - 23 oct. 2009 à 18:15
A voir également:
- Formulaire PHP/My SQL
- What is my movie français - Télécharger - Divers TV & Vidéo
- Formulaire de contact le bon coin introuvable ✓ - Forum Réseaux sociaux
- Easy php - Télécharger - Divers Web & Internet
- Formulaire de réclamation facebook - Guide
- My canalbox africa - Forum Box et Streaming vidéo
4 réponses
romi36
Messages postés
54
Date d'inscription
dimanche 26 novembre 2006
Statut
Membre
Dernière intervention
5 février 2012
1
22 oct. 2009 à 19:39
22 oct. 2009 à 19:39
Heuuu ..... ICI c'est fais pour poser des questions ... pas pour qu'on fasse le travail a votre place ! =)
Amicalement
Romi,
Amicalement
Romi,
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 504
22 oct. 2009 à 20:18
22 oct. 2009 à 20:18
Ajoutes deux champs sur ta table :
1. Un champ "email" en TINYTEXT
2. Un champ "newsletters" en BOOLEAN
Ensuite, il te suffit d'ajouter deux champs sur ton formulaire, ce n'est rien d'autre que du XHTML :
Pour la partie PHP, il me faudrai le script.
1. Un champ "email" en TINYTEXT
2. Un champ "newsletters" en BOOLEAN
Ensuite, il te suffit d'ajouter deux champs sur ton formulaire, ce n'est rien d'autre que du XHTML :
<form method="cible.php" method="post"> <!-- ce que tu as déjà --> <p> <label for="email">Adresse email</label> <input type="text" name="email" id="email" /> </p> <p> <label for="newsletters">Recevoir la newsletters</label> <input type="checkbox" id="newsletters" name="newsletters" /> </p> <!-- la suite, avec le bouton d'envoye par ex. --> </form>
Pour la partie PHP, il me faudrai le script.
94uaehd
Messages postés
49
Date d'inscription
lundi 29 juin 2009
Statut
Membre
Dernière intervention
18 décembre 2010
3
22 oct. 2009 à 21:54
22 oct. 2009 à 21:54
Le php + le formulaire:
<?php session_start(); require 'conf.php'; $erreur=0; if(isset($_GET['action'],$_POST['passe_membre'],$_POST['confirm_mdp']) AND $_POST['passe_membre']===$_POST['confirm_mdp']) { if(get_magic_quotes_gpc()===1) { $pseudo=$_POST['pseudo']; $passe=$_POST['passe_membre']; } else { $pseudo=addslashes($_POST['pseudo']); $passe=addslashes($_POST['passe_membre']); } if(!trim($pseudo) OR !trim($passe)) { header('location:inscription.php'); exit; } mysql_connect($mysql_host,$mysql_login,$mysql_passe) OR die('<p>Connexion impossible à la base de données. Réessayez plus tard.</p>'); mysql_select_db($mysql_base) OR die('<p>sélection impossible</p>'); $requete=mysql_query('SELECT COUNT(*) FROM membres WHERE pseudo="'.$pseudo.'"') OR die(mysql_error()); $r=mysql_fetch_row($requete); if($r[0]!=='0') { mysql_close(); $erreur=1; } else { mysql_query('INSERT INTO membres VALUES("","'.$pseudo.'",md5("'.$passe.'"))') OR die(mysql_error()); $_SESSION['login']=$pseudo; mysql_close(); header('location:zonemembre.php'); exit; } } if($erreur===1) { echo '<p>Ce pseudo existe déjà. Veuillez en choisir un autre</p>'; } ?> <p class="DetailContainer"><span class="f">L'inscription est rapide et gratuite. Elle vous permet de bénéficier de multiples avantages.</span></p> <hr /> <form method="post" action="inscription.php?action=ajout"> <p> <span class="f"> <label for="log">Nom d'utilisateur (login) :</label> <input type="text" name="pseudo" size="20" id="log" /> <br /><br /> Mot de passe : <input type="password" name="passe_membre" size="20" id="mdp" /> </span></p> <p><span class="f"> <label for="cmdp">Confirmez votre mot de passe :</label> <input type="password" name="confirm_mdp" size="20" id="cmdp" /> </span><br /></p> <p><input type="submit" class="f" value="Inscription" /></p> </form> </p>
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 504
22 oct. 2009 à 22:48
22 oct. 2009 à 22:48
Remplace
Par
Et n'oublie pas d'ajouter les champs à ton formulaire.
else { mysql_query('INSERT INTO membres VALUES("","'.$pseudo.'",md5("'.$passe.'"))') OR die(mysql_error()); $_SESSION['login']=$pseudo; mysql_close(); header('location:zonemembre.php'); exit; } } if($erreur===1) { echo '<p>Ce pseudo existe déjà. Veuillez en choisir un autre</p>'; }
Par
else { if(preg_match("#^[a-z0-9._-]+@[a-z0-9._-]{2,}\.[a-z]{2,4}$#i",$_POST['email'])) { if(isset($_POST['newsletters'])) { $newsletters = true; } else { $newsletters = false; } mysql_query('INSERT INTO membres VALUES("","'.$pseudo.'",md5("'.$passe.'"),"'.$_POST['email'].'",'.$newsletters.')') OR die(mysql_error()); $_SESSION['login']=$pseudo; mysql_close(); header('location:zonemembre.php'); exit; } else { $erreur = 2; } } } if($erreur===1) { echo '<p>Ce pseudo existe déjà. Veuillez en choisir un autre</p>'; } elseif($erreur===2) { echo '<p>L\'adresse email entrée est invalide.</p>'; }
Et n'oublie pas d'ajouter les champs à ton formulaire.
94uaehd
Messages postés
49
Date d'inscription
lundi 29 juin 2009
Statut
Membre
Dernière intervention
18 décembre 2010
3
23 oct. 2009 à 12:39
23 oct. 2009 à 12:39
Merci beaucoup, le code marche assez bien mais quand on décoche la case "newsletters", il y a le message suivant: "
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ')' at line 1"
avion-f16
Messages postés
19249
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
15 juin 2024
4 504
23 oct. 2009 à 14:23
23 oct. 2009 à 14:23
Essaye avec ça:
if(isset($_POST['newsletters'])) { $newsletters = 1; } else { $newsletters = 0; }Si ça ne marche toujours pas, mets le champ SQL "newsletters" en TINYINT
94uaehd
Messages postés
49
Date d'inscription
lundi 29 juin 2009
Statut
Membre
Dernière intervention
18 décembre 2010
3
23 oct. 2009 à 18:15
23 oct. 2009 à 18:15
ça marche !! merci beaucoup !
22 oct. 2009 à 20:04