Pb insertion base de données formulaire php [Fermé]

Signaler
Messages postés
1
Date d'inscription
samedi 8 mai 2004
Statut
Membre
Dernière intervention
8 mai 2004
-
Messages postés
3127
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
12 octobre 2020
-
Bonjour j'ai un problème pour envoyer des données aves un formulaire simple html dans une base sql
voici le code:

<form action="E:\web\easy php\EasyPHP1-7\www\delf\bonneconnec.php" method="get">
<input type="text" name="nom" size="40" maxlength="256">
<input type="text" name="prenom" size="40" maxlength="256">
<input type="text" name="adr" size="40" maxlength="256">
...

<?

$connect= mysql_connect("localhost","root","");

if($connect)
{echo " connexion au serveur réussie";}
else echo mysql_error();

$connexion = mysql_select_db("champ des livres");

if ($connexion)
{echo "connexion au serveur réussie";}
else echo mysql-error();




//requete d'insertion

$nom = $_GET['nom'];
$prenom = $_GET['prenom'];
$adr =$_GET['adr'];
$codep =$_GET['codep'];
$ville = $_GET['ville'];

$select2 = " insert into client (Nomclient, prénomclient,Adresseclient,
codepostalcli,villeclient)
VALUES ('$nom','$prenom','$adr','$codep','$ville')";
mysql_query($select2);


?>

le boutton ne soumet rien ou alors lorsque je met les deux scripts dans la meme page , il y a 5 erreur et il me met que les variables
$nom,$ville,$prenom,$adresse ne sont pas définies

8 réponses

Salut, pour envoyer les donnees il faut utiliser $POST pas $GET.
4
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 60511 internautes nous ont dit merci ce mois-ci

GET envoi aussi les données... sauf que c'est en clair à la différence de POST!! Les deux font la même chose !!
Messages postés
43
Date d'inscription
samedi 1 mars 2008
Statut
Membre
Dernière intervention
14 mai 2012
3
j ai fait ce qui tu m a dit j ai efacee l espace mais le probleme reste le meme l insertion a la base de donne
les donne n envoit pas a la base donnee je ne sais pas ou le probleme voia mon stp detecte aide moi pour trouver le probleme voila mon code ( la selection a la base de donne ca marche mais l insertion non )


<?php
$i=1;
$var=mysql_connect("localhost","root","");
mysql_select_db("test");
$sql="select question from examen1";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result) )
{?>
<h4>
<?php
echo "$i) question N°$i:<br> $tab[question] <br>";
$i++;
}
?>
</h4>
<?php

if (isset($_POST['reponse1']) and isset($_POST['reponse2'])and isset($_POST['reponse3']) and isset($_POST['reponse4']) and isset($_POST['reponse5']))
{$reponse1=$_POST['reponse1'];
$reponse2=$_POST['reponse2'];
$reponse3=$_POST['reponse3'];
$reponse4=$_POST['reponse4'];
$reponse5=$_POST['reponse5'];

$var=mysql_connect("localhost","root","");

mysql_select_db("test",$var);

$req="INSERT INTO tab_reponse ('reponse_quest')".
"VALUES ('".$reponse1."')";

$result = mysql_query($req);
}
?>
<form method=post action="quest_select.php">

<SELECT name="reponse1" id="reponse1">

<?php

$var=mysql_connect("localhost","root","");
mysql_select_db("test",$var);


$sql="select choix1,choix2,choix3 from examen1 where name='1'";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result))
{?>
<OPTION><?php echo "$tab[0] " ; ?> </option>
<OPTION><?php echo "$tab[1] " ; ?> </option>
<OPTION><?php echo "$tab[2] " ; ?> </option>

<?php
}
?>
</SELECT>

<?php
mysql_close();
?>
</form>

<form method="post" action="quest_select.php">

<SELECT name="reponse2" id="reponse2">

<?php

$var=mysql_connect("localhost","root","");
mysql_select_db("test",$var);


$sql="select choix1,choix2,choix3 from examen1 where name='2'";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result))
{?>
<OPTION><?php echo "$tab[0] "; ?> </option>
<OPTION><?php echo "$tab[1] "; ?> </option>
<OPTION><?php echo "$tab[2] "; ?> </option>


<?php
}
?>
</SELECT>

<?php
mysql_close();
?>
</form>
<form method="get" action="quest_select.php">

<SELECT name="reponse3" id="reponse3">

<?php

$var=mysql_connect("localhost","root","");
mysql_select_db("test",$var);


$sql="select choix1,choix2,choix3 from examen1 where name='3'";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result))
{?>
<OPTION><?php echo "$tab[0] "; ?> </option>
<OPTION><?php echo "$tab[1] "; ?> </option>
<OPTION><?php echo "$tab[2] "; ?> </option>

<?php
}
?>
</SELECT>

<?php
mysql_close();
?>
</form>
<form method="post" action="quest_select.php">

<SELECT name="reponse4" id="reponse4">

<?php

$var=mysql_connect("localhost","root","");
mysql_select_db("test",$var);


$sql="select choix1,choix2,choix3 from examen1 where name='4'";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result))
{?>
<OPTION><?php echo "$tab[0] "; ?> </option>
<OPTION><?php echo "$tab[1] "; ?> </option>
<OPTION><?php echo "$tab[2] "; ?> </option>


<?php
}
?>
</SELECT>

<?php
mysql_close();
?>
</form>
<form method="post" action="quest_select.php">

<SELECT name="reponse5" id="reponse5">

<?php

$var=mysql_connect("localhost","root","");
mysql_select_db("test",$var);


$sql="select choix1,choix2,choix3 from examen1 where name='5'";
$result=mysql_query($sql);
WHILE ($tab = mysql_fetch_array($result))
{?>
<OPTION><?php echo "$tab[0] "; ?> </option>
<OPTION><?php echo "$tab[1] "; ?> </option>
<OPTION><?php echo "$tab[2] "; ?> </option>



<?php
}
?>
</SELECT>

<?php
mysql_close();
?>
</form>
merci pour vos aide
Messages postés
5
Date d'inscription
samedi 8 mai 2004
Statut
Membre
Dernière intervention
19 juin 2004
3
Salut,

Pour débugger en php, je te conseille de faire des "echo" un peu partout pour voir ce qui se passe. On finit toujours par trouver ce qui ne va pas!!!

----------
"La paume du prêtre commenca à luire puis à briller d'une 
lumière blanche..."         R.E.Feist                      
Quelqu'un peut il m'aider je suis completement perdu. G creer ma base de donner normal jusque la, par la suite g creer mon site... on ma donné un script php pour pouvoir faire apparaitre mon formulaire dans le site, le script est le suivant:

<?php

// Parametres de connexion à la base de données

$dbhost="localhost";
$dblogin="root";
$dbpassword="";
$dbname="laetitia_db";

// Conversion des variables externes
// en variables globales
// Adaptez les listes à vos champs

$a1 = $_GET["a1"];
$a2 = $_GET["a2"];
$a3 = $_GET["a3"];
$a4 = $_GET["a4"];
$a5 = $_GET["a5"];
$a6 = $_GET["a6"]
$a7 = $_GET["a7"];
$a8 = $_GET["a8"];
$a9 = $_GET["a9"];
$a10 = $_GET["a10"];
$mail= $_GET["mail"];


echo "Bonjour,<br>";
mysql_connect($dbhost,$dblogin,$dbpassword);mysql_laetitia($laetitia);
$result=mysql_query("INSERT INTO laetitia (p11,p12,p13,p14,p15,p21,p22,p23,p24,p25,mail)
VALUES ('$p11','$p12','$p13','$p14','$p15''$p21',$p22','$p22','$p23','$p24','$p25','$mail'0,0)");
if (!$result) {
echo "L'enregistrement de vos données a échoué. Essayez plus tard<br>";
} else {
echo "Merci d'avoir voté et à bientôt!<br>";
}</BODY>
</HTML>

mysql_close();

keski cloche! rien ne s'affiche sur mon site une fois passer sur filezilla! help me je suis au bord du suicide!!! en sachaant que quand le visiteur repond au formulaire les reponses doivent se retrouver sur ma base de donnée !!!

merci bcp de m'aider
Messages postés
200
Date d'inscription
dimanche 15 février 2009
Statut
Membre
Dernière intervention
22 mai 2014
10
First: je suis d'avis evec rodriguemarly,

Faut =
<form action="E:\web\easy php\EasyPHP1-7\www\delf\bonneconnec.php" method="get">

Vrai =
<form action="../delf/bonneconnec.php" method="get">

secondo; lili

tu a renseigner correctement ces information?

$dbhost="localhost";
$dblogin="root";
$dbpassword="";
$dbname="laetitia_db";



Ta requête sql est mal structurée, elle dois être comme ceci:

$sql = "INSERT INTO client (nom, prenom,adr,
codep,ville) VALUES ('$nom','$prenom','$adr','$codep','$ville')";

N'oubli pas que les champs marqués "nom", "prenom"... figurent dans ta table, si tu met "NomClient" ca ne marchera pas car mysql ne reconnaitra pas la catégorie où elle doit insérer le nom.

Heu sa serré pas sa qui pose probléme ?

<form action="E:\web\easy php\EasyPHP1-7\www\delf\bonneconnec.php" method="get"> 


Quand tu est sur ton site ( sur ton ftp ) il peut pas te trouvé "E:\web\easy php\EasyPHP1-7\www\delf\bonneconnec.php"


Messages postés
3127
Date d'inscription
mercredi 30 janvier 2002
Statut
Contributeur
Dernière intervention
12 octobre 2020
399
Pour insérer des datas dans une base tu dois utiliser le INSERT et non un SELECT.
Insert pour insérer des données.
Select pour sélectionner une entrée dans ta table.

$nom = $_GET['nom']; => suppose que ton champ du formulaire se nomme bien nom ainsi que le nom de la colonne dans ta table "client" est aussi "nom".

De plus je te conseille de passer les variables en POST au lieu de GET (en GET toutes tes données se voient dans la barre d'adresse du navigateur).

Le bonheur est la seule chose que l'on peut donner sans l'avoir.