Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/01/2008, 09h25   #1
Invité de passage
 
Inscription : janvier 2008
Messages : 16
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 16
Points : 4
Points : 4
Par défaut Envoi de données d'un formulaire à une BDD

J'essaie de créer un formulaire dont les données rentrées par les utilisateurs alimentent une base de données :
j'ai ce code :
Code html :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<html>
<head>
<title>formulaire</title>
<head>
<body>
Pour vous inscrire :<br>
<form method="post" action="insert.php">
Nom : <input type="text" name="nom"><br>
<script type="text/javascript" src="defnom.php"></script>
Email : <input type="text" name="email"><br>
<input type="submit" name="submit" value="Insérer">
</form>
</body>
</html>

Par ailleurs, la page insert.php, est :
Code :
1
2
3
4
5
6
<?php
mysql_connect('localhost','root','') or die ("erreur de connexion");
mysql_select_db('base') or die ("erreur de connexion base");
mysql_query("INSERT INTO liste VALUES ('','$nom','$email')");
mysql_close();
?>
Ma base de donnée s'appelle base, à l'intérieur j'ai une table qui s'appelle liste et à l'intérieur encore 3 champs : id, nom, email.
Mais ça ne marche pas. J'ai ce message d'erreur :

Notice: Undefined variable: nom in C:\Program Files\EasyPHP 2.0b1\www\site test\insert2.php on line 4

Notice: Undefined variable: email in C:\Program Files\EasyPHP 2.0b1\www\site test\insert2.php on line 4

Quelqu'un peut-il m'aider ? Merci !
Cédric22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2008, 09h31   #2
Membre habitué
 
Avatar de greg13
 
Inscription : mars 2005
Messages : 144
Détails du profil
Informations personnelles :
Localisation : Belgique

Informations forums :
Inscription : mars 2005
Messages : 144
Points : 120
Points : 120
Tu dois sans doute utiliser le tableau global $_POST pour récupérer tes variables :

Essaye peut etre comme ça :

Code :
1
2
3
4
5
6
7
8
9
10
<?php
 
$nom = $_POST['nom'];
$email = $_POST['email'];
 
mysql_connect('localhost','root','') or die ("erreur de connexion");
mysql_select_db('base') or die ("erreur de connexion base");
mysql_query("INSERT INTO liste VALUES ('','$nom','$email')");
mysql_close();
?>
greg13 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2008, 09h31   #3
Modérateur
 
Avatar de Dsphinx
 
Homme
Développeur Web
Inscription : septembre 2005
Messages : 1 032
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Suisse

Informations professionnelles :
Activité : Développeur Web
Secteur : High Tech - Multimédia et Internet

Informations forums :
Inscription : septembre 2005
Messages : 1 032
Points : 754
Points : 754
As tu récupérer tes variables avec les fonctions $_POST ? Comme greg13 te le proposes ?

L'erreur est que tes variables ne sont pas définies ! Essaie de les afficher ! Il n'y a surement rien ! Donc elles ne sont pas pas récupérées !
__________________
Les cours: XHTML, CSS, PHP, Flash et Javascript
Expliquez votre problème clairement et pensez à remercier ceux qui vous ont aidé.
N'oubliez pas : Le tag résolu est la meilleure des satisfactions sur developpez.com
Aucune question technique par MP.
Dsphinx est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/01/2008, 10h58   #4
Invité de passage
 
Inscription : janvier 2008
Messages : 16
Détails du profil
Informations forums :
Inscription : janvier 2008
Messages : 16
Points : 4
Points : 4
Oh ça marche, c'est merveilleux :-) Merci !
Cédric22 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h57.


 
 
 
 
Partenaires

Hébergement Web