Champ obligatoire dans formulaire
Résolu
Bonjour,
Petit problème avec un formulaire sous php. Alors plusieurs questions à vous poser.
1)J'ai remarqué que toutes les données du formulaire doivent être remplies pour qu'il soit validé.
Comment peut-on faire pour rendre certains champs obligatoires ou bien aucun champ onligatoire.
2) Mon fichier traitement.php (voir code plus bas) est celui qui traite les données. J'ai remarqué que quand il est validé, on arrive sur celui-ci et tout le monde peut voir en faisant "affichage" "source" mes codes de connexion à la base de données, ce qui est un peut gênant.
3) Dernière question : Est-ce possible d'éviter d'être envahi de données remplies automatiquement par des robots ou je ne sais quoi.
Voilà merci à tous pour cet excellent forum
Cordlt
CN
<?php
mysql_connect("sql.free.fr","nom base","mot e");
mysql_selectdb("legarrit");
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
if(!$resultat) echo "Erreur lors de l'enregistrement des données!";
else echo "Votre demande a bien été prise en compte.";
?>
<br><p align="center"><b><font face="Verdana">Nous vous répondrons très prochainement.</font></b></p>
<br><p align="center"><b><font face="Verdana">Merci de votre visite et à très bientôt.</font></b></p>
Petit problème avec un formulaire sous php. Alors plusieurs questions à vous poser.
1)J'ai remarqué que toutes les données du formulaire doivent être remplies pour qu'il soit validé.
Comment peut-on faire pour rendre certains champs obligatoires ou bien aucun champ onligatoire.
2) Mon fichier traitement.php (voir code plus bas) est celui qui traite les données. J'ai remarqué que quand il est validé, on arrive sur celui-ci et tout le monde peut voir en faisant "affichage" "source" mes codes de connexion à la base de données, ce qui est un peut gênant.
3) Dernière question : Est-ce possible d'éviter d'être envahi de données remplies automatiquement par des robots ou je ne sais quoi.
Voilà merci à tous pour cet excellent forum
Cordlt
CN
<?php
mysql_connect("sql.free.fr","nom base","mot e");
mysql_selectdb("legarrit");
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
if(!$resultat) echo "Erreur lors de l'enregistrement des données!";
else echo "Votre demande a bien été prise en compte.";
?>
<br><p align="center"><b><font face="Verdana">Nous vous répondrons très prochainement.</font></b></p>
<br><p align="center"><b><font face="Verdana">Merci de votre visite et à très bientôt.</font></b></p>
A voir également:
- Veuillez renseigner ce champ
- Forum Instagram
- Forum Excel
- Forum Gestion et lecture audio
- Forum Excel
- Forum Instagram
26 réponses
Salut,
Alors, dans l'ordre :
1) Tu as plusieures possibilités, soit tu utilises le javascript pour vérifier que tes variables sont saisies, du genre ça :
Puis dans ton code php :
Là, c'est au format HTML, tu peux donc soit fermer les balises php avant et les ouvrir ensuite ou tout mettre en php avec des echo.
La seconde méthode consiste à utiliser le php.
Quand tu valides ton formulaire, si une variable est nulle, tu renvoies un message d'erreur
2) Je doute fortement que l'on puisse voir la chaine de connexion et regardant la source du fichier...
Cela étant, je te conseille de faire des inclusions de fichiers afin que tu n'ais pas à retaper cette chaine dans tous les fichiers :
Puis, tu crées un nouveau fichier que tu nommes config.php dans lequel tu mets ta chaine de connexion :
Je te conseille aussi de vérifier tes données avant de faire une requête SQL.
Vérifie qu'elles ne sont pas nulles, vérifies qu'elles correspondent au format attendu, genre, ne pas entrer des lettres alors qu'on attend des chiffres.
3)Oui c'est possible en mettant en place un système comme on en voit des dizaines de nos jours, c'est à dire un système d'image contenant des chiffres et des lettres que l'on doit saisir pour pouvoir continuer.
Cela étant, je n'ai jamais mis ce genre de solution en place pour le moment.
En éspèrant t'avoir aidé un minimum.
Bonne journée.
Alors, dans l'ordre :
1) Tu as plusieures possibilités, soit tu utilises le javascript pour vérifier que tes variables sont saisies, du genre ça :
//CODE JAVASCRIPT à mettre dans un fichier à part script.js function verification() { if (document.formulaire.nom.value == "") { alert("Entrez votre nom !"); return false; } }
Puis dans ton code php :
<script LANGUAGE="JavaScript" src="../script.js"></script> <form method="post" name="formuliare" action="ajout_nord.php" onsubmit="return verification()" >
Là, c'est au format HTML, tu peux donc soit fermer les balises php avant et les ouvrir ensuite ou tout mettre en php avec des echo.
La seconde méthode consiste à utiliser le php.
Quand tu valides ton formulaire, si une variable est nulle, tu renvoies un message d'erreur
2) Je doute fortement que l'on puisse voir la chaine de connexion et regardant la source du fichier...
Cela étant, je te conseille de faire des inclusions de fichiers afin que tu n'ais pas à retaper cette chaine dans tous les fichiers :
#dans tous tes fichiers php, tu mets ça au début : <?php include ("../config.php"); ?>
Puis, tu crées un nouveau fichier que tu nommes config.php dans lequel tu mets ta chaine de connexion :
<?php mysql_connect("sql.free.fr","nom base","mot e"); mysql_selectdb("legarrit"); ?>
Je te conseille aussi de vérifier tes données avant de faire une requête SQL.
Vérifie qu'elles ne sont pas nulles, vérifies qu'elles correspondent au format attendu, genre, ne pas entrer des lettres alors qu'on attend des chiffres.
3)Oui c'est possible en mettant en place un système comme on en voit des dizaines de nos jours, c'est à dire un système d'image contenant des chiffres et des lettres que l'on doit saisir pour pouvoir continuer.
Cela étant, je n'ai jamais mis ce genre de solution en place pour le moment.
En éspèrant t'avoir aidé un minimum.
Bonne journée.
Bonjour,
Merci à tous pour la rapidité de la réponse, plus vite que l'éclair.
Je vais donc travailler tout ça et bien sûr, je perds la boule, bien sûr que l'on ne voit pas mes indentifiants, j'ai vérifié.
Pour les captcha, on en voit partout, je pense qu'il faudra que je me penche sur le problème tôt ou tard mais je n'y connais rien.
Merci encore.
CN
Merci à tous pour la rapidité de la réponse, plus vite que l'éclair.
Je vais donc travailler tout ça et bien sûr, je perds la boule, bien sûr que l'on ne voit pas mes indentifiants, j'ai vérifié.
Pour les captcha, on en voit partout, je pense qu'il faudra que je me penche sur le problème tôt ou tard mais je n'y connais rien.
Merci encore.
CN
Bonjour,
J'ai finalement opté pour du php, le javascript n'étant pas mon truc.
J'ai donc forcé le formulaire à rendre des champs obligatoires.
Tout a l'air de fonctionner, s'il manque un champ, il le signale, si tout est ok, il valide.
MAIS problème, mes données ne s'affichent pas dans la base de données, on dirait qu'elles ne sont pas enregistrées.
J'ai bidouillé un peu le code php et il y a sûrmeent un pb quelque part.
D'autre part, chez Free, on ne peut pas récupèrer les données par mail ? Rien n'a changé de ce côté là ?
Cordlt et merci beaucoup.
traitement.php ci-t, les données sont remplies bien sûr mais ici masquées par des XXXX.
<?php
mysql_connect("sql.free.fr","XXXX","XXXX");
mysql_selectdb("nom base");
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
J'ai finalement opté pour du php, le javascript n'étant pas mon truc.
J'ai donc forcé le formulaire à rendre des champs obligatoires.
Tout a l'air de fonctionner, s'il manque un champ, il le signale, si tout est ok, il valide.
MAIS problème, mes données ne s'affichent pas dans la base de données, on dirait qu'elles ne sont pas enregistrées.
J'ai bidouillé un peu le code php et il y a sûrmeent un pb quelque part.
D'autre part, chez Free, on ne peut pas récupèrer les données par mail ? Rien n'a changé de ce côté là ?
Cordlt et merci beaucoup.
traitement.php ci-t, les données sont remplies bien sûr mais ici masquées par des XXXX.
<?php
mysql_connect("sql.free.fr","XXXX","XXXX");
mysql_selectdb("nom base");
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
bjr, moi j'ai presque le mm prob, sauf que moi les champs mon formulaire sont obligatoire et je voulais les rendre facultatifs. je porte à votre connaissance que le formulaire ce n'est pas moi qui l'avait fait , car là je suis entrain de continuer un travaille de qlq'un!!! et je ne sais pas qcq quil avait fait exactement pour rendre ces champs obligatoire , est ce que c'est du java script ou c'est de php!!!!
Salut!
1) Pour rendre certains champs obligatoires, il faut tout simplement vérifier que, lors de l'envoi du formulaire, ces champs soient bien remplis.
2)Tu es sur qu'en affichant la source tu arrives à voir le code php interprété?!? Faudrait que tu me présente ton navigateur, jsuis interresé ;) lol
3)Oui il est possible que des robots remplissent automatiquement ton formulaire. c'est pour ça qu'on utilise des "captcha" (voir https://fr.wikipedia.org/wiki/Captcha Ce sont les images peu lisibles où tu dois recopier ce que tu vois dans une box.
1) Pour rendre certains champs obligatoires, il faut tout simplement vérifier que, lors de l'envoi du formulaire, ces champs soient bien remplis.
2)Tu es sur qu'en affichant la source tu arrives à voir le code php interprété?!? Faudrait que tu me présente ton navigateur, jsuis interresé ;) lol
3)Oui il est possible que des robots remplissent automatiquement ton formulaire. c'est pour ça qu'on utilise des "captcha" (voir https://fr.wikipedia.org/wiki/Captcha Ce sont les images peu lisibles où tu dois recopier ce que tu vois dans une box.
Re,
Est-ce que tes données étaient insérées avant qu'on modifie le code ?
Je te suggère de récupèrer les données avant de faire ta requête :
Tu pourrais presque faire les tests dés cet instant là...
Tiens moi au courant.
A++
Est-ce que tes données étaient insérées avant qu'on modifie le code ?
Je te suggère de récupèrer les données avant de faire ta requête :
#tu mets ça au début de fichier $nom = $_POST['nom']; $prenom = $_POST['prenom']; $adresse = $_POST['adresse']; #puis ton code...
Tu pourrais presque faire les tests dés cet instant là...
Tiens moi au courant.
A++
oui, les données étaient insérées avant de faire les modif.
Je viens de rajouter ce que tu m'as dit ça ne change rien.
Voici le code.
Merci
CN
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
Je viens de rajouter ce que tu m'as dit ça ne change rien.
Voici le code.
Merci
CN
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question Peux-tu ajouter des echo pour afficher les variables et voir si elles sont bien ées ?
Tu peux poster les 2 fichiers php pour voir si y'a pas une erreur avant svp.
Tu peux poster les 2 fichiers php pour voir si y'a pas une erreur avant svp.
Peux-tu ajouter des echo pour afficher les variables et voir si elles sont bien ées ?
C'est du chinois pour moi... suis nulle en php...
Voici les 2 fichiers
reservation.php (formulaire)
<form method="post" action="traitement.php" id="reserver">
<p class="titre">Coordonnées</p>
<fieldset id="coordonnees">
<p id="civilite"><label>Civilité : </label>
<input type="radio" name="civilite" value="M." />M.
<input type="radio" name="civilite" value="Mlle" />Mlle
<input type="radio" name="civilite" value="Mme" />Mme
</p>
<label>Nom : </label>
<input type="text" name="nom" size="30" /><br />
<label>Prénom: </label>
<input type="text" name="prenom" size="30" /><br />
<label>Adresse : </label>
<input type="text" name="adresse" size="30" /><br />
<label>Code postal : </label>
<input type="text" name="codepostal" size="30" /><br />
<label>Ville : </label>
<input type="text" name="ville" size="30" /><br />
<label>Département : </label>
<input type="text" name="dep" size="30" /><br />
<label>N° de téléphone : </label>
<input type="text" name="tel" size="14" maxlength="14" value=""><br />
<label>e-mail : </label>
<input type="text" name="email" size="30" /><br />
<label>Site perso : </label>
<input type="text" name="site" size="30" /><br />
</fieldset>
<p class="titre">Infos</p>
<p id="civilite"><label>Connaissez-vous notre région ? </label>
<input type="radio" name="yes" value=1 />Oui.
<input type="radio" name="yes" value=2 />Non.
</p>
<p class="titre">Message</p>
<fieldset id="message">
<textarea name="com" rows="5" cols="40"></textarea>
</fieldset>
<p id="buttons">
<input type="submit" value="Envoyer" />
<input type="reset" value="Recommencer" />
</p>
</form>
et traitement.php
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
C'est du chinois pour moi... suis nulle en php...
Voici les 2 fichiers
reservation.php (formulaire)
<form method="post" action="traitement.php" id="reserver">
<p class="titre">Coordonnées</p>
<fieldset id="coordonnees">
<p id="civilite"><label>Civilité : </label>
<input type="radio" name="civilite" value="M." />M.
<input type="radio" name="civilite" value="Mlle" />Mlle
<input type="radio" name="civilite" value="Mme" />Mme
</p>
<label>Nom : </label>
<input type="text" name="nom" size="30" /><br />
<label>Prénom: </label>
<input type="text" name="prenom" size="30" /><br />
<label>Adresse : </label>
<input type="text" name="adresse" size="30" /><br />
<label>Code postal : </label>
<input type="text" name="codepostal" size="30" /><br />
<label>Ville : </label>
<input type="text" name="ville" size="30" /><br />
<label>Département : </label>
<input type="text" name="dep" size="30" /><br />
<label>N° de téléphone : </label>
<input type="text" name="tel" size="14" maxlength="14" value=""><br />
<label>e-mail : </label>
<input type="text" name="email" size="30" /><br />
<label>Site perso : </label>
<input type="text" name="site" size="30" /><br />
</fieldset>
<p class="titre">Infos</p>
<p id="civilite"><label>Connaissez-vous notre région ? </label>
<input type="radio" name="yes" value=1 />Oui.
<input type="radio" name="yes" value=2 />Non.
</p>
<p class="titre">Message</p>
<fieldset id="message">
<textarea name="com" rows="5" cols="40"></textarea>
</fieldset>
<p id="buttons">
<input type="submit" value="Envoyer" />
<input type="reset" value="Recommencer" />
</p>
</form>
et traitement.php
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$resultat = mysql_query( $requete );
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
Oui fais comme foobar t'indique. Affiches le résultat de ta requête :
et poste la nous.
Et sinon la vérification des champs doient se faire avant la requete, sinon ça sert à rien ;)
Au fait, tu nous fera un prix pour des vacances dans ton gîte?lol :)
echo $requete
et poste la nous.
Et sinon la vérification des champs doient se faire avant la requete, sinon ça sert à rien ;)
Au fait, tu nous fera un prix pour des vacances dans ton gîte?lol :)
Ah malheureusement, c'est pour des amis le site, je ne suis pas la propriétaire mais ça peut se négocier...
Le soleil, pas de problème, le Pastis aussi et il y a des arbres, alors c'est parfait...
Bon, eh ben je cale je ne comprends pas trop où placer echo.
Et c'est toujours le même résultat.
Merci
CN
Le soleil, pas de problème, le Pastis aussi et il y a des arbres, alors c'est parfait...
Bon, eh ben je cale je ne comprends pas trop où placer echo.
Et c'est toujours le même résultat.
Merci
CN
Je recommence :
File moi tes fichiers PHP qu'on puisse y jetter un oeil !
As-tu des WARNING ou autres messages ?
File moi tes fichiers PHP qu'on puisse y jetter un oeil !
As-tu des WARNING ou autres messages ?
Aucun warning, je viens d'envoyer les fichiers sur ta boite Hotmail.
J'espère avoir bien fait ?
A plus
CN
J'espère avoir bien fait ?
A plus
CN
alors le fichier reservation.php (formulaire)
<form method="post" action="traitement.php" id="reserver">
<p class="titre">Coordonnées</p>
<fieldset id="coordonnees">
<p id="civilite"><label>Civilité : </label>
<input type="radio" name="civilite" value="M." />M.
<input type="radio" name="civilite" value="Mlle" />Mlle
<input type="radio" name="civilite" value="Mme" />Mme
</p>
<label>Nom : </label>
<input type="text" name="nom" size="30" /><br />
<label>Prénom: </label>
<input type="text" name="prenom" size="30" /><br />
<label>Adresse : </label>
<input type="text" name="adresse" size="30" /><br />
<label>Code postal : </label>
<input type="text" name="codepostal" size="30" /><br />
<label>Ville : </label>
<input type="text" name="ville" size="30" /><br />
<label>Département : </label>
<input type="text" name="dep" size="30" /><br />
<label>N° de téléphone : </label>
<input type="text" name="tel" size="14" maxlength="14" value=""><br />
<label>e-mail : </label>
<input type="text" name="email" size="30" /><br />
<label>Site perso : </label>
<input type="text" name="site" size="30" /><br />
</fieldset>
<p class="titre">Infos</p>
<p id="civilite"><label>Connaissez-vous notre région ? </label>
<input type="radio" name="yes" value=1 />Oui.
<input type="radio" name="yes" value=2 />Non.
</p>
<p class="titre">Message</p>
<fieldset id="message">
<textarea name="com" rows="5" cols="40"></textarea>
</fieldset>
<p id="buttons">
<input type="submit" value="Envoyer" />
<input type="reset" value="Recommencer" />
</p>
</form>
<form method="post" action="traitement.php" id="reserver">
<p class="titre">Coordonnées</p>
<fieldset id="coordonnees">
<p id="civilite"><label>Civilité : </label>
<input type="radio" name="civilite" value="M." />M.
<input type="radio" name="civilite" value="Mlle" />Mlle
<input type="radio" name="civilite" value="Mme" />Mme
</p>
<label>Nom : </label>
<input type="text" name="nom" size="30" /><br />
<label>Prénom: </label>
<input type="text" name="prenom" size="30" /><br />
<label>Adresse : </label>
<input type="text" name="adresse" size="30" /><br />
<label>Code postal : </label>
<input type="text" name="codepostal" size="30" /><br />
<label>Ville : </label>
<input type="text" name="ville" size="30" /><br />
<label>Département : </label>
<input type="text" name="dep" size="30" /><br />
<label>N° de téléphone : </label>
<input type="text" name="tel" size="14" maxlength="14" value=""><br />
<label>e-mail : </label>
<input type="text" name="email" size="30" /><br />
<label>Site perso : </label>
<input type="text" name="site" size="30" /><br />
</fieldset>
<p class="titre">Infos</p>
<p id="civilite"><label>Connaissez-vous notre région ? </label>
<input type="radio" name="yes" value=1 />Oui.
<input type="radio" name="yes" value=2 />Non.
</p>
<p class="titre">Message</p>
<fieldset id="message">
<textarea name="com" rows="5" cols="40"></textarea>
</fieldset>
<p id="buttons">
<input type="submit" value="Envoyer" />
<input type="reset" value="Recommencer" />
</p>
</form>
et le fichier traitement.php
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$resultat = mysql_query( $requete );
?>
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$resultat = mysql_query( $requete );
?>
même résultat en les mettant au début, je suis vraiment con et désolée de vous faire perdre votre temps...
Elles sont vraiment au début là ou alors c'est avant le mysql connect mais ça m'étonnerait.
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$resultat = mysql_query( $requete );
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
Elles sont vraiment au début là ou alors c'est avant le mysql connect mais ça m'étonnerait.
<?php
mysql_connect("sql.free.fr","XXX","XXX");
mysql_selectdb("XXX");
$civilite = $_POST['civilite'];
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$adresse = $_POST['adresse'];
$codepostal = $_POST['codepostal'];
$ville = $_POST['ville'];
$dep = $_POST['dep'];
$pays = $_POST['pays'];
$tel= $_POST['tel'];
$yes = $_POST['yes'];
$com= $_POST['com'];
$email= $_POST['email'];
$site = $_POST['site'];
$resultat = mysql_query( $requete );
$requete = "insert into formulaire (civilite,
nom,
prenom,
adresse,
codepostal,
ville,
dep,
pays,
tel,
yes,
com,
email,
site)";
$requete .= " values ('$civilite',
'$nom',
'$prenom',
'$adresse',
$codepostal,
'$ville',
'$dep',
'$pays',
'$tel',
$yes ,
'$com',
'$email',
'$site')";
// vérification des champs
if (empty($_POST['nom']))
$message .= "Veuillez indiquer votre nom<br/>";
if (empty($_POST['email']))
$message .= "Veuillez renseigner le champ email<br/>";
if (empty($_POST['tel']))
$message .= "Veuillez renseigner le champ téléphone<br/>";
if (empty($_POST['com']))
$message .= "Veuillez taper votre message<br/>";
if (strlen($message) > strlen($msg_erreur)) {
echo $message;
} else echo "Nous vous répondrons très prochainement, merci de votre visite et à très bientôt.";
?>
Aucun changement après cette modification.
Puis-je en savoir plus sur les retours d'erreur ?
Vous allez être tranquille je dois m'absenter mais je reviens ce soir et je ne me couche pas tant que le pb n'est pas résolu.
Merci encore
Puis-je en savoir plus sur les retours d'erreur ?
Vous allez être tranquille je dois m'absenter mais je reviens ce soir et je ne me couche pas tant que le pb n'est pas résolu.
Merci encore
Moi je ne pourrais pas t'aider ce soir...je suis là que dans la journée. Mais bon foobar t'aidera (c'est ça l'esprit du nord ;) )
- Sinon as-tu vérifier que les champs dans ta base de données s'apellent bien comme tu les a écrit?
- Deuxieme chose: lors de tes tests, as-tu remplis des champs avec des apostrophes??? (exemple : adresse=rue de l'eglise)
- Sinon as-tu vérifier que les champs dans ta base de données s'apellent bien comme tu les a écrit?
- Deuxieme chose: lors de tes tests, as-tu remplis des champs avec des apostrophes??? (exemple : adresse=rue de l'eglise)
Heu, pas ce soir, l'esprit du nord va se mettre des pinthes dans... non j'arrête !
Pas ce soir, désolé !
Ca doit être un truc tout con, comme d'habitude en PHP, une quote de trop, une quote mal placée, une virgule oubliée, une connerie quoi !!... :-|
J'essaie de regarder ton code et je te dis quoi...
Au fait, tu utilises quelle version de PHP et de MySQL ?
Sous Linux ? Sous windows ?
A++
Pas ce soir, désolé !
Ca doit être un truc tout con, comme d'habitude en PHP, une quote de trop, une quote mal placée, une virgule oubliée, une connerie quoi !!... :-|
J'essaie de regarder ton code et je te dis quoi...
Au fait, tu utilises quelle version de PHP et de MySQL ?
Sous Linux ? Sous windows ?
A++
Alors y'a du nouveau, je viens de faire une découverte si on rempli tous les champs du formulaire, ça marche nickel, les données sont enregistrées.
Si on remplit que celles censées être obligatoires car vérifiées, ça ne les enregistre pas, peut-être que ça va vous éclairer.
MErci et bonne soirée...
Si on remplit que celles censées être obligatoires car vérifiées, ça ne les enregistre pas, peut-être que ça va vous éclairer.
MErci et bonne soirée...
J'écrivais mon message quand t'as répondu ;)
J'ai juste à rajouter que si tu désactives le javascript de ton navigateur, ta fonction ne marche plus...
la vérification côté serveur devient donc obligatoire ;)
C'est pour ça que j'ai proposé les 2 solutions.
Au pire, rien n'empêche de faire 2 fois la vérification.
A++