Inscription des données en mysql
Romyyy
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonsoir,
J'ai créé un formulaire d'inscription pour mon site pour devenir membre. J'aimerais que les champs prénoms noms et emails soient enregistrés dans ma base de données. Or il s'affiche "Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in C:\wamp\www\formulaire\cible.php on line 12" à l'écran quand je teste le code que voici. Sauriez-vous m'aider à trouver mes erreurs ? Merci d'avance voici le code :
<meta http-esquiv="refresh" content="8"; URL="index.html">
<p>Merci à vous,<strong><?php echo $_POST['prenom']; ?></strong>, d'avoir pris le temps de remplir ce formulaire d'inscription.</p>
<p>Un email de confirmation d'inscription vous a été envoyé à l'adresse "<?php echo $_POST['email']; ?>".</p>
<p>Merci de cliquer sur le lien de confirmation pour valider votre inscription.</p>
<p><font color="#FF0000"><strong><U><a href="index.html">Cliquez ici pour retourner sur la page d'accueil.</a href></strong></u></font></p>
<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO membres(nom, prenom, email, mdp) VALUES(:nom, :prenom, :email, :mdp)');
$req->execute(array(
'nom' => $_POST['nom']
'prenom' => $_POST['prenom']
'email' => $_POST['email']
'mdp' => $_POST['pass']
));
?>
J'ai créé un formulaire d'inscription pour mon site pour devenir membre. J'aimerais que les champs prénoms noms et emails soient enregistrés dans ma base de données. Or il s'affiche "Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ')' in C:\wamp\www\formulaire\cible.php on line 12" à l'écran quand je teste le code que voici. Sauriez-vous m'aider à trouver mes erreurs ? Merci d'avance voici le code :
<meta http-esquiv="refresh" content="8"; URL="index.html">
<p>Merci à vous,<strong><?php echo $_POST['prenom']; ?></strong>, d'avoir pris le temps de remplir ce formulaire d'inscription.</p>
<p>Un email de confirmation d'inscription vous a été envoyé à l'adresse "<?php echo $_POST['email']; ?>".</p>
<p>Merci de cliquer sur le lien de confirmation pour valider votre inscription.</p>
<p><font color="#FF0000"><strong><U><a href="index.html">Cliquez ici pour retourner sur la page d'accueil.</a href></strong></u></font></p>
<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO membres(nom, prenom, email, mdp) VALUES(:nom, :prenom, :email, :mdp)');
$req->execute(array(
'nom' => $_POST['nom']
'prenom' => $_POST['prenom']
'email' => $_POST['email']
'mdp' => $_POST['pass']
));
?>
A voir également:
- Inscription des données en mysql
- Fuite données maif - Guide
- Wetransfer gratuit sans inscription - Guide
- Twitter inscription - Guide
- Trier des données excel - Guide
- Vinted inscription - Guide
6 réponses
Salut,
pourquoi tu ne passe pas en PHP simple au lieu de passe en PDO, ça serait plus simple, non?
sinon je voit ceci(mais comme je ne connait pas PDO je sais pas si c'est une erreur): $req = $bdd->prepare('INSERT INTO membres(nom, prenom, email, mdp) VALUES(:nom, :prenom, :email, :mdp)');
tu met des ":" devant nom, prenom, email et mdp
pourquoi tu ne passe pas en PHP simple au lieu de passe en PDO, ça serait plus simple, non?
sinon je voit ceci(mais comme je ne connait pas PDO je sais pas si c'est une erreur): $req = $bdd->prepare('INSERT INTO membres(nom, prenom, email, mdp) VALUES(:nom, :prenom, :email, :mdp)');
tu met des ":" devant nom, prenom, email et mdp
O lala!
Quel code je te conseille de former tes lignes comme sa:
Pseudo:<br/>
<input ............. />
et pour le php
$_post[pseudo]
Quel code je te conseille de former tes lignes comme sa:
Pseudo:<br/>
<input ............. />
et pour le php
$_post[pseudo]
essaie de mettre des ' dans tes variable voir:
'nom' => $_post['nom']
'prenom' => $_post['prenom']
'email' => $_post['email']
'mdp' => $_post['pass']
et pour la redirection c'est pas "esquiv" mais equiv ^^
<meta http-equiv="refresh" content="8;URL=index.html" />
ta une erreur aussi ici: <a href="index.html">Cliquez ici pour retourner sur la page d'accueil.</a href> c'est </a> pour refermer un lien et non </a href> ; )
sinon moi je ferai comme ceci:
voila, bon bien entendu il te faut te connecter avant ; )
'nom' => $_post['nom']
'prenom' => $_post['prenom']
'email' => $_post['email']
'mdp' => $_post['pass']
et pour la redirection c'est pas "esquiv" mais equiv ^^
<meta http-equiv="refresh" content="8;URL=index.html" />
ta une erreur aussi ici: <a href="index.html">Cliquez ici pour retourner sur la page d'accueil.</a href> c'est </a> pour refermer un lien et non </a href> ; )
sinon moi je ferai comme ceci:
<?php if(isset($_POST['nom'])) { if(empty($_POST['nom'])) { echo "Veuillez remplir le champ Nom<br /><a href='".$_SERVER["PHP_SELF"]."'>Retour</a>"; } else { // ont verifie que rien ne soit vide if(empty($_POST['prenom'])) { echo "Veuillez remplir le champ prenom<br /><a href='".$_SERVER["PHP_SELF"]."'>Retour</a>"; } else { if(empty($_POST['email'])) { echo "Veuillez remplir le champ email<br /><a href='".$_SERVER["PHP_SELF"]."'>Retour</a>"; } else { if(empty($_POST['mdp'])) { echo "Veuillez remplir le champ mdp<br /><a href='".$_SERVER["PHP_SELF"]."'>Retour</a>"; } else { $nom = htmlentities(addslashes($_POST['nom'])); $prenom = htmlentities(addslashes($_POST['prenom'])); $email = htmlentities(addslashes($_POST['email'])); $mdp = htmlentities(addslashes($_POST['mdp'])); // on insere dans la bbd son enregistrement mysql_query("INSERT INTO table_membre(nom, prenom, email, mdp) VALUES('$nom', '$prenom', '$email', '$mdp')"); echo "Inscription rèussit !"; } } } } } else { ?> <form method="post" action="<?php echo $_SERVER["PHP_SELF"]; ?>"> Formulaire d'inscription: <br /> Nom: <input type="text" name="nom" /> <br /> Prenom: <input type="text" name="prenom" /> <br /> Email: <input type="text" name="email" /> <br /> Mot De¨Passe: <input type="password" name="mdp" /> <br /> <input type="submit" value="M'inscrire" /> </form> <?php } ?>
voila, bon bien entendu il te faut te connecter avant ; )
Merci pour ta reponse si rapide. Et comment passer par du php simple ? J'ai juste suivi l'exemple du site du zero...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci de vos réponses. J'ai modifié mon code mais l'erreur est toujours présente... Voici mon code :
<meta http-esquiv="refresh" content="8"; URL="index.html">
<p>Merci à vous,<strong><?php echo $_post[prenom]; ?></strong>, d'avoir pris le temps de remplir ce formulaire d'inscription.</p>
<p>Un email de confirmation d'inscription vous a été envoyé à l'adresse "<?php echo $_post[email]; ?>".</p>
<p>Merci de cliquer sur le lien de confirmation pour valider votre inscription.</p>
<p><font color="#FF0000"><strong><U><a href="index.html">Cliquez ici pour retourner sur la page d'accueil.</a href></strong></u></font></p>
<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO membres(nom, prenom, email, mdp) VALUES(:nom, :prenom, :email, :mdp)');
$req->execute(array(
'nom' => $_post[nom]
'prenom' => $_post[prenom]
'email' => $_post[email]
'mdp' => $_post[pass]
));
?>
<meta http-esquiv="refresh" content="8"; URL="index.html">
<p>Merci à vous,<strong><?php echo $_post[prenom]; ?></strong>, d'avoir pris le temps de remplir ce formulaire d'inscription.</p>
<p>Un email de confirmation d'inscription vous a été envoyé à l'adresse "<?php echo $_post[email]; ?>".</p>
<p>Merci de cliquer sur le lien de confirmation pour valider votre inscription.</p>
<p><font color="#FF0000"><strong><U><a href="index.html">Cliquez ici pour retourner sur la page d'accueil.</a href></strong></u></font></p>
<?php
$pdo_options[PDO::ATTR_ERRMODE] = PDO::ERRMODE_EXCEPTION;
$bdd = new PDO('mysql:host=localhost;dbname=test', 'root', '', $pdo_options);
$req = $bdd->prepare('INSERT INTO membres(nom, prenom, email, mdp) VALUES(:nom, :prenom, :email, :mdp)');
$req->execute(array(
'nom' => $_post[nom]
'prenom' => $_post[prenom]
'email' => $_post[email]
'mdp' => $_post[pass]
));
?>