| |
|
Voir le sujet précédent :: Voir le sujet suivant
|
| Auteur |
Message |
| |
|
ASGlobalServices Nouveau WRInaute
Inscrit le: 25 Jan 2008 Messages: 12 Localisation: Les Pennes Mirabeau (près Marseille)
|
Posté le : Mar Mai 13, 2008 21:20 Sujet du message: Formulaire php et mysql |
|
|
Bonjour !
J'ai trouvé un tuto que je trouve pas mal pour mon cas ici : http://www.6ma.fr/tuto/faire+formulaire+php+html+css+sur+3-179
Je demande de l'aide ici d'une part parce que je commence à y avoir mes "habitudes", d'autre part parce que le forum du lien plus haut n'a pas l'air très actif.
Je l'ai un peu adapté (un peu parce que je n'y connais pas grand chose), ce qui donne :
| Code: |
<?php
// Parametres mysql
define('DB_SERVER', 'localhost'); // serveur mysql
define('DB_SERVER_USERNAME', '*****'); // nom d'utilisateur
define('DB_SERVER_PASSWORD', '*****'); // mot de passe
define('DB_DATABASE', 'formulaire'); // nom de la base
// Connexion au serveur mysql
$connect = mysql_connect(DB_SERVER, DB_SERVER_USERNAME,
DB_SERVER_PASSWORD)
or die('Impossible de se connecter : ' . mysql_error());
// sélection de la base de données
mysql_select_db(DB_DATABASE, $connect);
//Vérification du remplissage des champs
$msg_erreur = "Erreur ! Les champs suivants doivent être obligatoirement remplis :<br/><br/>";
$msg_ok = "Votre demande a bien été prise en compte";
$message = $msg_erreur;
if (empty($_POST['nom_prenom']))
$message .= "Nom, Prénom<br/>";
if (empty($_POST['adresse']))
$message .= "Adresse<br/>";
if (empty($_POST['telephone']))
$message .= "Téléphone<br/>";
if (empty($_POST['mail']))
$message .= "Adresse Mail<br/>";
if (empty($_POST['besoin']))
$message .= "Besoins<br/>";
//Protection des données
else {
}
foreach($_POST as $index => $valeur) {
$$index = mysql_real_escape_string(trim($valeur));
}
//Insertion des données dans la table
$sql = "INSERT INTO formulaire VALUES ('', '".$societe."', '".$nom_prenom."', '".$adresse."', '".$telephone."', '".$mail."', '".$besoin."', '".$newsletter."', now())";
$res = mysql_query($sql);
if ($res) {
echo $msg_ok;
} else {
echo mysql_error();
}
?>
|
Mes problèmes sont les suivants :
1. Le champ "Besoin" ne se remplit pas.
2. Apparemment la fonction pour vérifier si les champs sont tous remplis ne fonctionne pas.
3. J'ai aussi un champ "Datetime" dans la table qui n'affiche que des zéros.
Merci de votre aide
Sandra |
|
| |
|
 |
Bacteries WRInaute passionné

Inscrit le: 27 Mai 2004 Messages: 951 Localisation: France - Nantes
|
Posté le : Mar Mai 13, 2008 23:16 Sujet du message: Formulaire php et mysql |
|
|
Utilise pour ta requête la forme :
INSERT INTO taTable (colone1, colone2, ...) VALUES ('value1', 'value2')
pour éviter certains soucis déjà (avec des values qui corresponde à l'ordre des colonnes bien sûr).
Ta fonction créé un message mais ne fait aucune vérification au final.
Fais plutôt :
| Code: |
$enErreur = false;
if (empty($_POST['nom_prenom'])) {
$message .= "Nom, Prénom<br/>";
$enErreur = true;
}
|
et au moment de lancer ta requête test si tu as une erreur :
| Code: |
if (!$enErreur)
{
// ta requete
} else {
echo $message;
} |
(sinon c'est assez moche comme code je trouve) |
|
| |
|
 |
ASGlobalServices Nouveau WRInaute
Inscrit le: 25 Jan 2008 Messages: 12 Localisation: Les Pennes Mirabeau (près Marseille)
|
Posté le : Mer Mai 14, 2008 10:38 Sujet du message: Formulaire php et mysql |
|
|
Bonjour,
Certains champs ne se remplissent toujours pas... et c'est vrai que le code est pas génial finalement...
Je crois que je vais utiliser un simple formmail pour le moment.
Si vraiment le besoin de stocker dans une bdd se pointe, je reposterai.
Merci quand même de la réponse
Sandra |
|
| |
|
 |
e-kiwi Modérateur

Inscrit le: 23 Déc 2003 Messages: 11978 Localisation: Toulouse
|
Posté le : Mer Mai 14, 2008 10:45 Sujet du message: Formulaire php et mysql |
|
|
| faudrait voir le formulaire (si il faut tu n'as tout simplement pas de champ "besoin" dans ton formulaire) |
|
| |
|
 |
| |
|
|
|
|
Autres sujets de discussion :
Définitions :
|
|