[php-HTML] envoi formulaire vers BDD wamp
Résolumetra83 Messages postés 4 Date d'inscription Statut Membre Dernière intervention -
donc je dois faire un formulaire, et transmettre les données de ce formulaire vers une base de donnée, le tout sur wamp, le soucis étant que depuis le formulaire il doit être possible de retourner sur 2 autres formulaires et 2 autres pages html ... ça ok, mais je n'arrive pas a envoyer le contenu sur la base de donnée
actuellement j'ai ça :
un des 3 formulaires
<html> <head> <title>Formulaire bénévoles</title> </head> <body bgcolor='#90B0D0'> <form method='POST' action='validationdemande.php'> <table> <tr> <td><img src="logo1" /></td> <center> <td><h1>FORMULAIRE DE PROPOSITION D'AIDE<h3/></td> </tr> <tr> <td Valign=top> <br /><input type="submit" name="bouton1" value="Page d'accueil"> <br /><input type="submit" name="bouton2" value="Localisation"> <br /><input type="submit" name="bouton3" value="Demande d'aide"> <br /><input type="submit" name="bouton4" value="Proposition d'aide"> <br /><input type="submit" name="bouton5" value="Donations"> </td> <td Valign=top> <table> <tr> <td><h3>Nom :</td> <td><input type="text" name="nombenevole" value=""/></td> </tr> <tr> <td><h3>Prénom :</td> <th><input type="text" name="prenombenevole" value=""/></th> </tr> <tr> <td><h3>Adresse :</td> <td><input type="text" name="adressebenevole" value=""/></td> </tr> <tr> <td><h3>Téléphone :</td> <td><input type="text" name="télèphonebenevole" value=""/></td> </tr> <tr> <td><h3>E-mail :</td> <td><input type="text" name="e-mailbenevole" value=""/></td> </tr> <tr> <td><h3>Disponibilité :</td> <td> <table> <tr> <td><input type="checkbox" name="disponibilité1" value="lundi"> lundi</td> <td><input type="checkbox" name="disponibilité2" value="mardi"> mardi</td> </tr> <tr> <td><input type="checkbox" name="disponibilité3" value="mercredi"> mercredi</td> <td><input type="checkbox" name="disponibilité4" value="jeudi"> jeudi</td> </tr> <tr> <td><input type="checkbox" name="disponibilité5" value="vendredi"> vendredi</td> <td><input type="checkbox" name="disponibilité6" value="samedi"> samedi</td> </tr> </table> </table> <br/><br/> <input type="submit" name="bouton6" value="Envoyer"> </td> </tr> </table> </form> </body> </html>
avec tous les boutons, on atteint une page en php donc :
<?php
if(@ $_POST['bouton1']=="Page d'accueil")
{
header ("Location: http://localhost/progetgsi/page-acceuil.html");
}
?>
et donc le code est le meme pour les boutons 1 à 5, juste l'adresse qui change ;)
jusque là tout va a peu près bien (meme si j'ai été obligé de mettre le lien complet car sinon ça ne marchait pas non plus ! !
ensuite le code du bouton 6, il est idem, mais pour l'envoi du formulaire sur la base de donnée, rien ne veux fonctionner, je n'arrive a rien, tous les codes que j'ai pu tenter ne fonctionnent pas ! celui du bouton est ok, mais pas la suite
si un de vous a une idée, ça m'arrangerais bien !
je pourrais mettre le code que j'ai actuellement, mais entre nous il ne ressemble pas a grand chose !
- [php-HTML] envoi formulaire vers BDD wamp
- Whatsapp formulaire opposition - Guide
- Editeur html - Télécharger - HTML
- Formulaire de réclamation facebook compte désactivé - Guide
- Envoyer vers - Guide
- Expert php - Télécharger - Langages
12 réponses
Le problème central est l’envoi des données du formulaire bénévoles vers la base de données via PHP et MySQL, alors que les redirections des autres pages fonctionnent. Des éléments essentiels résident dans la gestion des disponibilités par cases à cocher et les variables POST dispo1 à dispo6, qu’il faut inclure ensuite dans l’insertion SQL. La solution consiste à récupérer les valeurs via $_POST et à les insérer avec une requête INSERT INTO table_benevole VALUES(...); le dernier champ doit être géré par une clé primaire AUTO_INCREMENT. En cas de test, il peut être utile de vérifier que les noms des champs coïncident et de tester la requête dans le gestionnaire SQL pour repérer les erreurs d’insertion.
de plus tu peux intégrer ton code js directement ds le bouton :
<input type="bouton" name="bouton1" value="Page d'accueil" onclick='javascript:window.location.href='page-accueil.html'" />
de plus un formulaire ne peut contenir qu'un seul input submit
( ou alr il faut passer par js pr verifier la valeur )
je veux pas arreter a ce stade la, alors que je suis en ci bon chemin, enfin j'espère :D
la j'en suis la, je suis reparti sur des bases "saines" enfin jespere
<html>
<head>
<title>new1</title>
</head>
<body>
<?php
$nom=$_POST['nombenevole'];
$prenom=$_POST['prenombenevole'];
$adresse=$_POST['adressebenevole'];
$tel=$_POST['télèphonebenevole'];
$email=$_POST['e-mailbenevole'];
echo "<p>Nom : $nom</p>";
echo "<p>Prénom : $prenom</p>";
echo "<p>Adresse : $adresse</p>";
echo "<p>Téléphone : $tel</p>";
echo "<p>E-mail : $email</p>";
echo "<p>Vous avez étés enregistré en tant que bénévole </p>";
$db=mysql_connect ("localhost", "root", "") or die("Erreur de connexion à Mysql ".mysql_error);
mysql_select_db("lerocher", $db) or die("Erreur de connexion à la base lerocher");
$sql="INSERT INTO benevole VALUES('$nom', '$prenom', '$adresse', '$tel', '$email', '', '', '', '', '', '', '')
?>
</body>
</html>
parmis les 7 "" il y en a 6 pour disponibilité 1 à 6 des jours de la semaine (qu'il faut que j'ajoute dans les cariables plus haut, et le dernier pour un numero autoincrémenté (je crois que c'est comme ça qu'on dit)
PS :
$sql="INSERT INTO benevole VALUES('$nom', '$prenom', '$adresse', '$tel', '$email', '', '', '', '', '', '', '')il manque des caracteres ^^
il faut marquer :
$sql="INSERT INTO benevole VALUES('$nom', '$prenom', '$adresse', '$tel', '$email', '', '', '', '', '', '', '')";
Concernant ton probleme de requete y a t'il une erreur ? Ou juste il n'insere rien
alors précédement, je n'arrivais pas a inserer, ça me mettait au mieu une page blanche, la avec le new code, je sais pas je suis en train d'essayer ;)
insere du javascript ds tes boutons comme je te l'ai montré tt a l'h ^^
ensuite concatènes ^^ c'est tjs préférable :)
$sql="INSERT INTO benevole VALUES('".$nom."', '".$prenom."', '".$adresse."', '".$tel."', '".$email."', '', '', '', '', '', '', '')";
car ton plop est de type text ^^ tu peux sois faire echo "plop $variable";
( cAd laisser un espace ^^ ) mais alrs un espace sera affiché ( logique Oo lol )
dc si tu veux absolument coller ta variable a ton texte tu toi concaténer :
echo "plop".$variable;
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionj'en suis la, je vais changer mes titres et tenter en esperant que je me soit pas planter en route ^^
<html>
<head>
<title>new1</title>
</head>
<body>
<?php
$nom=$_POST['nombenevole'];
$prenom=$_POST['prenombenevole'];
$adresse=$_POST['adressebenevole'];
$tel=$_POST['télèphonebenevole'];
$email=$_POST['e-mailbenevole'];
$dispo1=$_POST['disponibilite1'];
$dispo2=$_POST['disponibilite2'];
$dispo3=$_POST['disponibilite3'];
$dispo4=$_POST['disponibilite4'];
$dispo5=$_POST['disponibilite5'];
$dispo6=$_POST['disponibilite6'];
echo "<p>Nom : $nom</p>";
echo "<p>Prénom : $prenom</p>";
echo "<p>Adresse : $adresse</p>";
echo "<p>Téléphone : $tel</p>";
echo "<p>E-mail : $email</p>";
echo "<p>Vous avez étés enregistré en tant que bénévole </p>";
$db=mysql_connect ("localhost", "root", "") or die("Erreur de connexion à Mysql ".mysql_error);
mysql_select_db("lerocher", $db) or die("Erreur de connexion à la base lerocher");
$sql="INSERT INTO table_benevole VALUES('$nom', '$prenom', '$adresse', '$tel', '$email', '$dispo1', '$dispo2', '$dispo3', '$dispo4', '$dispo5', '$dispo6', '')";
?>
</body>
</html>
mon formulaire est fait de façon a ce que les jours de disponibilité se cochent (j'y tiens) et il faut que le fait de cocher une case assossi oui ou non (ou autre chose) et que le dernier champs apporte un chiffre donné automatiquement egal au précédent (c'est la clé primaire) ...
et je pense qu'après ça ça devrait etre bon
le code actuel :
<html>
<head>
<title>insertion_benevole</title>
</head>
<body>
<?php
$nom=$_POST['nombenevole'];
$prenom=$_POST['prenombenevole'];
$adresse=$_POST['adressebenevole'];
$tel=$_POST['télèphonebenevole'];
$email=$_POST['e-mailbenevole'];
$dispo1=$_POST['disponibilite1'];
$dispo2=$_POST['disponibilite2'];
$dispo3=$_POST['disponibilite3'];
$dispo4=$_POST['disponibilite4'];
$dispo5=$_POST['disponibilite5'];
$dispo6=$_POST['disponibilite6'];
echo "<p>Nom : $nom</p>";
echo "<p>Prénom : $prenom</p>";
echo "<p>Adresse : $adresse</p>";
echo "<p>Téléphone : $tel</p>";
echo "<p>E-mail : $email</p>";
echo "<p>Vous avez étés enregistré en tant que bénévole </p>";
$db=mysql_connect ("localhost", "root", "") or die("Erreur de connexion à Mysql ".mysql_error);
mysql_select_db("lerocher", $db) or die("Erreur de connexion à la base lerocher");
$sql="INSERT INTO table_benevole VALUES('$nom', '$prenom', '$adresse', '$tel', '$email', '$dispo1', '$dispo2', '$dispo3', '$dispo4', '$dispo5', '$dispo6', '')";
mysql_close()
?>
</body>
</html>
le code :
<html> <head> <title>Formulaire bénévoles</title> </head> <body bgcolor='#90B0D0'> <form method='POST' action='validationdemande.php'> <table> <tr> <td><img src="logo1" /></td> <center> <td><h1>FORMULAIRE DE PROPOSITION D'AIDE<h3/></td> </tr> <tr> <td Valign=top> <br /><input type="submit" name="bouton1" value="Page d'accueil" style="width:150px"> <br /><input type="submit" name="bouton2" value="Localisation" style="width:150px"> <br /><input type="submit" name="bouton3" value="Demande d'aide" style="width:150px"> <br /><input type="submit" name="bouton4" value="Proposition d'aide" style="width:150px"> <br /><input type="submit" name="bouton5" value="Donations" style="width:150px"> </td> <td Valign=top> <table> <tr> <td><h3>Nom :</td> <td><input type="text" name="nombenevole" value=""/></td> </tr> <tr> <td><h3>Prénom :</td> <th><input type="text" name="prenombenevole" value=""/></th> </tr> <tr> <td><h3>Adresse :</td> <td><input type="text" name="adressebenevole" value=""/></td> </tr> <tr> <td><h3>Téléphone :</td> <td><input type="text" name="télèphonebenevole" value=""/></td> </tr> <tr> <td><h3>E-mail :</td> <td><input type="text" name="e-mailbenevole" value=""/></td> </tr> <tr> <td><h3>Disponibilité :</td> <td> <table> <tr> <td><input type="checkbox" name="disponibilite1" value="oui"> lundi</td> <td><input type="checkbox" name="disponibilite2" value="oui"> mardi</td> </tr> <tr> <td><input type="checkbox" name="disponibilite3" value="oui"> mercredi</td> <td><input type="checkbox" name="disponibilite4" value="oui"> jeudi</td> </tr> <tr> <td><input type="checkbox" name="disponibilite5" value="oui"> vendredi</td> <td><input type="checkbox" name="disponibilite6" value="oui"> samedi</td> </tr> </table> </tr> </table> <br/><br/> <input type="submit" name="bouton6" value="Envoyer"> </td> </tr> </table> </form> </body> </html>
et ce qui est affiché en réponse :
Nom : Prénom : Adresse : Téléphone : E-mail : Vous avez étés enregistré en tant que bénévole
alors que j'aurais du avoir les valeurs rentrées a la places des blancs après les ":"
et il n'y a rien dans la base de donnée ...
<?php
if(@ $_POST['bouton1']=="Page d'accueil")
{
header ("Location: http://localhost/progetgsi/page-acceuil.html");
}
if(@ $_POST['bouton2']=="Localisation")
{
header ("Location: http://localhost/progetgsi/page-acceuil.html");
}
if(@ $_POST['bouton3']=="Demande d'aide")
{
header ("Location: http://localhost/progetgsi/page_eleves.html");
}
if(@ $_POST['bouton4']=="Proposition d'aide")
{
header ("Location: http://localhost/progetgsi/page_benevoles.html");
}
if(@ $_POST['bouton5']=="Donations")
{
header ("Location: http://localhost/progetgsi/page-dons.html");
}
if(@ $_POST['bouton6']=="Envoyer")
{
header ("Location: http://localhost/progetgsi/insertion_benevole");
}
?>
le fichier insertion bénévole étant celui donné au dessus ;)
tu en a de la chance, moi je reçois rien du tout ^^
$nombenevole=$_POST['nombenevole']; $prenombenevole=$_POST['prenombenevole']; $adressebenevole=$_POST['adressebenevole']; $telephonebenevole=$_POST['telephonebenevole']; $e-mailbenevole=$_POST['e-mailbenevole']; $disponibilite1=$_POST['disponibilite1']; $disponibilite2=$_POST['disponibilite2']; $disponibilite3=$_POST['disponibilite3']; $disponibilite4=$_POST['disponibilite4']; $disponibilite5=$_POST['disponibilite5']; $disponibilite6=$_POST['disponibilite6'];
??
<?php
if(@ $_POST['bouton1']=="Page d'accueil"){
header ("Location: http://localhost/progetgsi/page-acceuil.html");}
if(@ $_POST['bouton2']=="Localisation"){
header ("Location: http://localhost/progetgsi/page-acceuil.html");}
if(@ $_POST['bouton3']=="Demande d'aide"){
header ("Location: http://localhost/progetgsi/page_eleves.html");}
if(@ $_POST['bouton4']=="Proposition d'aide"){
header ("Location: http://localhost/progetgsi/page_benevoles.html");}
if(@ $_POST['bouton5']=="Donations"){
header ("Location: http://localhost/progetgsi/page-dons.html");}
if(@ $_POST['bouton6']=="Envoyer"){
?>
<html>
<head>
<title>insertion_benevole</title>
</head>
<body>
<?php
$nom=$_POST['nombenevole'];
$prenom=$_POST['prenombenevole'];
$adresse=$_POST['adressebenevole'];
$tel=$_POST['télèphonebenevole'];
$email=$_POST['e-mailbenevole'];
$dispo1=$_POST['disponibilite1'];
$dispo2=$_POST['disponibilite2'];
$dispo3=$_POST['disponibilite3'];
$dispo4=$_POST['disponibilite4'];
$dispo5=$_POST['disponibilite5'];
$dispo6=$_POST['disponibilite6'];
echo "<p>Nom : $nom</p>";
echo "<p>Prénom : $prenom</p>";
echo "<p>Adresse : $adresse</p>";
echo "<p>Téléphone : $tel</p>";
echo "<p>E-mail : $email</p>";
echo "<p>Vous avez étés enregistré en tant que bénévole </p>";
$db=mysql_connect ("localhost", "root", "") or die("Erreur de connexion à Mysql ".mysql_error);
mysql_select_db("lerocher", $db) or die("Erreur de connexion à la base lerocher");
$sql="INSERT INTO table_benevole VALUES('$nom', '$prenom', '$adresse', '$tel', '$email', '$dispo1', '$dispo2', '$dispo3', '$dispo4', '$dispo5', '$dispo6', '')";
mysql_close()
?>
</body>
</html>
<?php } ?>
t'es vraiment génial, y a pas d'autres mots !
tu me sauve la vie :)
je vais voir si ça marche comme ça, et si ça marche avec le non :)
Nom : azerty Prénom : azerty Adresse : azerty Téléphone : E-mail : azerty@live.fr Vous avez été enregistré en tant que bénévole
mais le soucis c'est que ça a pas envoyer les données sur la bdd ...
merci ! ça a marcher, je vérifi donc sans cocher ce que ça fait ^^
main tenant je fais ça pour tous mes formulaires, et ensuite reste a faire la fonction mail sans passer par outlock (donc sans la fonction mailto: ... et la je sèche grave ^^