Probleme d'enregistrement dans la bd
ghisloy
Messages postés
137
Statut
Membre
-
Pitet Messages postés 2845 Statut Membre -
Pitet Messages postés 2845 Statut Membre -
j'essaye de mettre le champ newsletters sur mon site afin récupérer les mail pour une éventuelle campagne... voici le code php que j'ai écris mais quand je saisi le mail sur le site, cela ne va pas dans la bd. qu'est ce qui n'a pas marché.Aidez moi à corriger le code
et voici le code du champs newsletter:
merci
<?php
// Si le formulaire a été envoyé
if (isset ($_POST['OK']))
{
// Si le champs est vide, lancer une erreur
if (empty ($email))
$info = 'Veuillez saisir votre adresse mail';
else
{
// Connexion à la bdd
mysql_connect("localhost", "root","") or die("Echec de connexion au serveur.");; // Connexion à MySQL
mysql_select_db("feroxmusic") or die("Echec de sélection de la base.");; // Sélection de la base coursphp
// Insertion dans la bdd
$query = "INSERT INTO newsletters (mail) VALUES('$email')";
if (mysql_query($query))
$info = 'Inscription fait avec succès';
else
$info = 'Erreur lors de votre inscription';
//mysql_close();
}
}
?>
et voici le code du champs newsletter:
<p>
<label for="Abonnement">Abonnez-vous :</label>
<input type="email" autofocus="autofocus" name="email" border="2" id="" placeholder="entrez votre mail..." size="17" maxlength="35" autocomplete="on"/>
<input type="submit" name="submit" value="OK" />
</p>
merci
A voir également:
- Probleme d'enregistrement dans la bd
- Enregistrement mp3 gratuit - Télécharger - Streaming audio
- Erreur lors de l'enregistrement du contact - Forum Xiaomi
- Enregistrement - Guide
- Telecharger studio d'enregistrement rap - Télécharger - Édition & Montage
- W.i.t.c.h bd scan fr - Forum Loisirs / Divertissements
1 réponse
Salut,
Pas mal de choses à corriger, en vrac :
- pas de balise form pour ton formulaire ?
- la variable $_POST['OK'] n'existe pas car l'attribut name de ton input est 'submit' et non 'OK' : à remplacer par $_POST['submit']
- la variable $email n'existera pas (sauf si l'option register_globals est activée, ce qui est fortement déconseillé) : à remplacer par $_POST['email'] (pour récupérer la valeur de ton input avec name="email")
- erreur de syntaxe sur les lignes de connexion à la bdd : tu ne dois avoir qu'un seul point-virgule en fin de ligne
- ta requête comprend un risque d'injection sql, utiliser la fonction mysql_real_escape_string() pour éviter cela :
Enfin pour t'aider à trouver les erreurs en développement, pense à activer l'affichage des erreurs php.
Bonne journée
Pas mal de choses à corriger, en vrac :
- pas de balise form pour ton formulaire ?
- la variable $_POST['OK'] n'existe pas car l'attribut name de ton input est 'submit' et non 'OK' : à remplacer par $_POST['submit']
- la variable $email n'existera pas (sauf si l'option register_globals est activée, ce qui est fortement déconseillé) : à remplacer par $_POST['email'] (pour récupérer la valeur de ton input avec name="email")
- erreur de syntaxe sur les lignes de connexion à la bdd : tu ne dois avoir qu'un seul point-virgule en fin de ligne
- ta requête comprend un risque d'injection sql, utiliser la fonction mysql_real_escape_string() pour éviter cela :
$query = "INSERT INTO newsletters (mail) VALUES('" . mysql_real_escape_string($_POST['email']) . "')";
Enfin pour t'aider à trouver les erreurs en développement, pense à activer l'affichage des erreurs php.
Bonne journée