Formulaire PHP
salamzo_batuyo
Messages postés
4
Statut
Membre
-
salamzo_batuyo Messages postés 4 Statut Membre -
salamzo_batuyo Messages postés 4 Statut Membre -
bonjour a tous
SVP j'ai vraiment besoin d'aide. J'ai crée ma base de donné et jaimerais faire une interface graphique pour inserer les données directement dans ma base, alors j'ai concu un site web avec formulaire. le probleme est que mon code ne marche pas, je sais pas pour quel raison. le voici le farmeux code. pour l'insertion de donnée a l'aide d'1 formulaire concernant un fournisseur
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>AJOUTER FOURNISSEUR</title></head>
<body bgcolor="#fdff78" text="white">
<p align="center"><img src="file:///C|/w/les formulaires/logoo.png" height="136" width="974"></p>
<b><center>
<font color="black"> <h1>Renseigner ce formulaire pour ajouter un fournisseur.</h1></font>
</center></b>
<p> </p>
<p> </p>
<p> </p>
<form method="POST" action="ajout1_FOUR.php">
<p> <center><H2><font color="black" >FOURNISSEUR</font> </H2></center> </p>
<table border="2" width="350" align="center" bgcolor="black" cellspacing="2" cellpadding="2">
<tr>
<td width="150"><b><label for="IDfournisseur">IDfournisseur</label></b></td>
<td width="160"> <input type="text" name="IDfournisseur" id="IDfournisseur"> </td>
</tr>
<tr>
<td width="150"><b>Nom<b></td>
<td width="160"><input type="text" name="nomFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b> Prenom<b></td>
<td width="160"> <input type="text" name="prenomFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b>Commune </b> </td>
<td width="160"> <input type="text" name="communeFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b> Mail <b> </td>
<td width="160"> <input type="text" name="mailFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b> Telephone <b> </td>
<td width="160"> <input type="text" name="telephoneFOUR"/> </td>
</tr>
<tr>
<td colspan="2">
<center> <input name="ajouter" type="submit" value="Ajouter"/>
<input name="annuler" type="reset" value="Annuler"/>
</center> </td>
</tr>
</table>
</form>
</body>
<?php
//connection au serveur
$connexion = mysql_connect ('localhost', 'root', '');
//sélection de la base de données:
mysql_select_db ('gestion_stock', $connexion) ;
//récupération des valeurs des champs:
$IDfournisseur=$_POST['IDfournisseur'];
$nomFOUR=$_POST['nomFOUR'];
$prenomFOUR=$_POST['prenomFOUR'];
$communeFOUR=$_POST['communeFOUR'];
$mailFOUR=$_POST['mailFOUR'];
$telephoneFOUR=$_POST['telephoneFOUR'];
//création de la requête SQL:
$sql = 'INSERT INTO fournisseur VALUES ('$IDfournisseur', '$nomFOUR', '$prenomFOUR', '$communeFOUR', '$mailFOUR', '$telephoneFOUR')';
//exécution de la requête SQL:
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
?>
</html>
SVP j'ai vraiment besoin d'aide. J'ai crée ma base de donné et jaimerais faire une interface graphique pour inserer les données directement dans ma base, alors j'ai concu un site web avec formulaire. le probleme est que mon code ne marche pas, je sais pas pour quel raison. le voici le farmeux code. pour l'insertion de donnée a l'aide d'1 formulaire concernant un fournisseur
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>AJOUTER FOURNISSEUR</title></head>
<body bgcolor="#fdff78" text="white">
<p align="center"><img src="file:///C|/w/les formulaires/logoo.png" height="136" width="974"></p>
<b><center>
<font color="black"> <h1>Renseigner ce formulaire pour ajouter un fournisseur.</h1></font>
</center></b>
<p> </p>
<p> </p>
<p> </p>
<form method="POST" action="ajout1_FOUR.php">
<p> <center><H2><font color="black" >FOURNISSEUR</font> </H2></center> </p>
<table border="2" width="350" align="center" bgcolor="black" cellspacing="2" cellpadding="2">
<tr>
<td width="150"><b><label for="IDfournisseur">IDfournisseur</label></b></td>
<td width="160"> <input type="text" name="IDfournisseur" id="IDfournisseur"> </td>
</tr>
<tr>
<td width="150"><b>Nom<b></td>
<td width="160"><input type="text" name="nomFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b> Prenom<b></td>
<td width="160"> <input type="text" name="prenomFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b>Commune </b> </td>
<td width="160"> <input type="text" name="communeFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b> Mail <b> </td>
<td width="160"> <input type="text" name="mailFOUR"/> </td>
</tr>
<tr>
<td width="150"> <b> Telephone <b> </td>
<td width="160"> <input type="text" name="telephoneFOUR"/> </td>
</tr>
<tr>
<td colspan="2">
<center> <input name="ajouter" type="submit" value="Ajouter"/>
<input name="annuler" type="reset" value="Annuler"/>
</center> </td>
</tr>
</table>
</form>
</body>
<?php
//connection au serveur
$connexion = mysql_connect ('localhost', 'root', '');
//sélection de la base de données:
mysql_select_db ('gestion_stock', $connexion) ;
//récupération des valeurs des champs:
$IDfournisseur=$_POST['IDfournisseur'];
$nomFOUR=$_POST['nomFOUR'];
$prenomFOUR=$_POST['prenomFOUR'];
$communeFOUR=$_POST['communeFOUR'];
$mailFOUR=$_POST['mailFOUR'];
$telephoneFOUR=$_POST['telephoneFOUR'];
//création de la requête SQL:
$sql = 'INSERT INTO fournisseur VALUES ('$IDfournisseur', '$nomFOUR', '$prenomFOUR', '$communeFOUR', '$mailFOUR', '$telephoneFOUR')';
//exécution de la requête SQL:
mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());
mysql_close();
?>
</html>
A voir également:
- Formulaire PHP
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Confirmer le nouvel envoi du formulaire err_cache_miss - Forum Webmastering
5 réponses
Je crois que tu as oublié de donner les noms des colonnes dans lesquelles inserer les variables à ta requête, non ?
Bonjour,
Affiche ta requête avant de l'executer pour voir ce que cela te donne. Puis essaye de la mettre directement dans mysql.
Attention, si ton IDfournisseur est en autoIncrément ou primaire, cela peut te provoquer une erreur si tu réutilise un ID déjà attribué à un autre fournisseur.
Cordialement
Affiche ta requête avant de l'executer pour voir ce que cela te donne. Puis essaye de la mettre directement dans mysql.
/création de la requête SQL:
$sql = 'INSERT INTO fournisseur VALUES ('$IDfournisseur', '$nomFOUR', '$prenomFOUR', '$communeFOUR', '$mailFOUR', '$telephoneFOUR')';
echo $sql;
//exécution de la requête SQL:
/*mysql_query ($sql) or die ('Erreur SQL !'.$sql.'<br />'.mysql_error());*/
Attention, si ton IDfournisseur est en autoIncrément ou primaire, cela peut te provoquer une erreur si tu réutilise un ID déjà attribué à un autre fournisseur.
Cordialement
Bonjour
Tu dois avoir une erreur détectée par PHP à l'écriture de ta requête, car ta chaîne n'est pas correcte.
Si tu veux utiliser des apostrophes et des noms de variables dans ta requête, il faut l'entourer de double quotes :
Tu dois avoir une erreur détectée par PHP à l'écriture de ta requête, car ta chaîne n'est pas correcte.
Si tu veux utiliser des apostrophes et des noms de variables dans ta requête, il faut l'entourer de double quotes :
$sql = "INSERT INTO fournisseur VALUES ('$IDfournisseur', '$nomFOUR', '$prenomFOUR', '$communeFOUR', '$mailFOUR', '$telephoneFOUR')";De plus, tel qu'est écrit ton code, tu vas systématiquement insérer une ligne avec des variables vides car tu ne testes pas si le formulaire est rempli ou non. Or il ne l'est certainement pas la première fois que tu l'affiches.
De plus, tel qu'est écrit ton code, tu vas systématiquement insérer une ligne avec des variables vides car tu ne testes pas si le formulaire est rempli ou non. Or il ne l'est certainement pas la première fois que tu l'affiches.
Le traitement est effectué sur un autre page donc ta dernière phrase ne tiens pas ;)
OK si c'est fait sur une autre page, mais moi je ne vois rien qui l'indique, bien au contraire.
Il n'y a de balise </html> qu'après le code PHP, pas immédiatement après le </body> : ça laisse bien penser que tout ça est un seul et même fichier. Et il faut espérer que c'est bien le fichier ajout1_FOUR.php
Il n'y a de balise </html> qu'après le code PHP, pas immédiatement après le </body> : ça laisse bien penser que tout ça est un seul et même fichier. Et il faut espérer que c'est bien le fichier ajout1_FOUR.php
Tu as mis le code PHP après le formulaire, mais il ne faut surtout pas croire que PHP va sagement attendre que le formulaire soit rempli pour traiter la suite. Non, dès que le formulaire a été envoyé au client, c'est à dire affiché (et non pas rempli) le script continue et tente d'analyser des variables $_POST['xx'] qui n'existent pas!
Ces variables n'existeront que quand on cliquera sur le bouton 'submit' et que le script sera appelé à nouveau.
Il FAUT tester si le formulaire a bien été rempli avant d'essayer d'insérer les données dans la base. Par exemple :
Il serait bien aussi de tester que les données sont valables (pas vides par exemple) mais c'est une autre histoire.
Remarque sur ton image <img src="file:///C|/w/les formulaires/logoo.png" height="136" width="974">
Tu utilises file:///, ce qui signifie que chaque visiteur de ton site va aller chercher l'image dans son propre disque dur : tu peux être sûr que ça ne marchera jamais, personne d'autre que toi n'a cette image dans ce même dossier. Ton image doit être dans ton espace web, par exemple dans un sous-dossier "images" du dossier qui contient ton script, et tu mets une url relative :
<img src="./images/logoo.png" height="136" width="974">
Ces variables n'existeront que quand on cliquera sur le bouton 'submit' et que le script sera appelé à nouveau.
Il FAUT tester si le formulaire a bien été rempli avant d'essayer d'insérer les données dans la base. Par exemple :
if (isset($_POST['ajouter])) { // on a cliqué sur le bouton "Ajouter" ?Généralement, on fait ce test AVANT l'affichage du formulaire, car si les données sont correctes, on ne réaffiche pas le formulaire, on passe à autre chose.
... code pour insérer dans la base...
}
Il serait bien aussi de tester que les données sont valables (pas vides par exemple) mais c'est une autre histoire.
Remarque sur ton image <img src="file:///C|/w/les formulaires/logoo.png" height="136" width="974">
Tu utilises file:///, ce qui signifie que chaque visiteur de ton site va aller chercher l'image dans son propre disque dur : tu peux être sûr que ça ne marchera jamais, personne d'autre que toi n'a cette image dans ce même dossier. Ton image doit être dans ton espace web, par exemple dans un sous-dossier "images" du dossier qui contient ton script, et tu mets une url relative :
<img src="./images/logoo.png" height="136" width="974">
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question