Portail PHP

Forum de discussion et d'aide au php

Vous n'êtes pas identifié.

Annonce

Regles d'utilisation des forums : pensez à toujours les respecter si vous désirez obtenir des réponses rapides.
FAQ : pensez à toujours chercher dedans si la réponse à votre question est dedans.
Proposez vos news : si vous avez un evenement à annoncer
le chat : venez discuter de php.
 

#1 01-04-2008 12:31:01

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Aide pour formulaire d'envoie php vers base de données

1   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2
3   <html>
4   <body>
5
6   <?php
7   $nomcli=$_POST['nomcli'];
8   $prenomcli=$_POST['prenomcli'];
9   $adressecli=$_POST['adressecli'];
10 $telcli=$_POST['telcli'];
11 $melcli=$_POST['melcli'];
12 $nores=$_POST['nores'];
13 $dateresdeb=$_POST['dateresdeb'];
14 $datefinres=$_POST['datefinres'];
15 $nogite=$_POST['nogite'];
16
17 echo "Cher(e) $nomcli $prenomcli,<br/>";
18 echo "Vous désirez réserver le gîte numéro $nogite.";
19
20 $db=mysql_connect("localhost", "root", "GSI")
21 or die("erreur de connection".mysql_error());
22
23 mysql_select_db("Gite du vertige",$db) or die("erreur de connection à la base Gite du vertige");
24
25 $sql="INSERT INTO client (nomcli, prenomcli, adressecli, telcli, melcli, nores)
26 VALUES ('$nomcli','$prenomcli','$adressecli','$telcli,'$melcli','$nores')";
27
28 mysql_query($sql);
29
30 $sql="INSERT INTO reservation (nores, dateresdeb , dateresfin, nogite)
31 VALUES ('$nores','$dateresdeb','$dateresfin','$nogite)";
32
33 mysql_query($sql);
34
35 echo "<br/><br/> Vos données ont bien été envoyées dans notre base de données.
36
37 mysql_close();
38 ?>
39 </body>
40 </html>

Pouvez vous m'aidez svp ?
Les chiffres repésentent les lignes.

Dernière modification par Brendon92 (01-04-2008 12:43:18)

Hors ligne

 

#2 01-04-2008 12:33:22

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Re: Aide pour formulaire d'envoie php vers base de données

Voilà ensuite les erreurs que j'ai :

Notice: Undefined index: nomcli in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 7

Notice: Undefined index: prenomcli in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 8

Notice: Undefined index: adressecli in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 9

Notice: Undefined index: telcli in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 10

Notice: Undefined index: melcli in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 11

Notice: Undefined index: nores in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 12

Notice: Undefined index: dateresdeb in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 13

Notice: Undefined index: datefinres in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 14

Notice: Undefined index: nogite in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 15
Cher(e) ,
Vous désirez réserver le gîte numéro .
Notice: Undefined variable: dateresfin in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient.php on line 31


Vos données ont bien été envoyées dans notre base de données.

Dernière modification par Brendon92 (01-04-2008 12:43:36)

Hors ligne

 

#3 01-04-2008 12:44:42

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Re: Aide pour formulaire d'envoie php vers base de données

Et voilà mon formulaire html :

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<form>
<title>FORMULAIRE CLIENT</title>
<p><center><h2><u>Formulaire d'inscription</u></h2></center></p>
</br></br>
</head>
<body background="C:\Documents and Settings\All Users\Documents\Mes images\Échantillons d'images\collines.jpg">
</br>
<form method="POST" action="C:\PROGRA~1\EASYPH~1\www\Les gites du vertige\transfertclient.php">
</br>
<pre>
Nom : <input type="text" name="nomcli" value=""/>
</br></br>
Prénom : <input type="text" name="prenomcli" value=""/>
</br></br>
Adresse : <input type="text" name="adressecli" value=""/>
</br></br>
Numéro de téléphone fixe: <input type="text" name="telcli" value=""/>
</br></br>
Adresse électronique: <input type="text" name="melcli" value=""/>
</br></br>
Date de reservation:
</br>
du:<select name="datedebres" style="border: 1px solid #989898">
<option value="0" ></option>
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value="4" >4</option>
<option value="5" >5</option>
<option value="6" >6</option>
<option value="7" >7</option>
<option value="8" >8</option>
<option value="9" >9</option>
<option value="10" >10</option>
<option value="11" >11</option>
<option value="12" >12</option>
<option value="13" >13</option>
<option value="14" >14</option>
<option value="15" >15</option>
<option value="16" >16</option>
<option value="17" >17</option>
<option value="18" >18</option>
<option value="19" >19</option>
<option value="20" >20</option>
<option value="21" >21</option>
<option value="22" >22</option>
<option value="23" >23</option>
<option value="24" >24</option>
<option value="25" >25</option>
<option value="26" >26</option>
<option value="27" >27</option>
<option value="28" >28</option>
<option value="29" >29</option>
<option value="30" >30</option>
<option value="31" >31</option>
</font></b></td>
<font><b><td>
<select name="type" style="border: 1px solid #989898">
<option value="0" ></option>
<option value="1" >Janvier</option>
<option value="2" >Février</option>
<option value="3" >Mars</option>
<option value="4" >Avril</option>
<option value="5" >Mai</option>
<option value="6" >Juin</option>
<option value="7" >Juillet</option>
<option value="8" >Août</option>
<option value="9" >Septembre</option>
<option value="10" >Octobre</option>
<option value="11" >Novembre</option>
<option value="12" >Décembre</option>
</font></b></td>
<font><b><td>
<select name="type" style="border: 1px solid #989898">
<option value="0" ></option>
<option value="1" >2008</option>
<option value="2" >2009</option>
<option value="3" >2010</option>
<option value="4" >2011</option>
<option value="5" >2012</option>
<option value="6" >2013</option>
</font></b></td></select></td>


</br>au:<select name="datedebres" style="border: 1px solid #989898">
<option value="0" ></option>
<option value="1" >1</option>
<option value="2" >2</option>
<option value="3" >3</option>
<option value="4" >4</option>
<option value="5" >5</option>
<option value="6" >6</option>
<option value="7" >7</option>
<option value="8" >8</option>
<option value="9" >9</option>
<option value="10" >10</option>
<option value="11" >11</option>
<option value="12" >12</option>
<option value="13" >13</option>
<option value="14" >14</option>
<option value="15" >15</option>
<option value="16" >16</option>
<option value="17" >17</option>
<option value="18" >18</option>
<option value="19" >19</option>
<option value="20" >20</option>
<option value="21" >21</option>
<option value="22" >22</option>
<option value="23" >23</option>
<option value="24" >24</option>
<option value="25" >25</option>
<option value="26" >26</option>
<option value="27" >27</option>
<option value="28" >28</option>
<option value="29" >29</option>
<option value="30" >30</option>
<option value="31" >31</option>
</font></b></td>
<font><b><td>
<select name="type" style="border: 1px solid #989898">
<option value="0" ></option>
<option value="1" >Janvier</option>
<option value="2" >Février</option>
<option value="3" >Mars</option>
<option value="4" >Avril</option>
<option value="5" >Mai</option>
<option value="6" >Juin</option>
<option value="7" >Juillet</option>
<option value="8" >Août</option>
<option value="9" >Septembre</option>
<option value="10" >Octobre</option>
<option value="11" >Novembre</option>
<option value="12" >Décembre</option>
</font></b></td>
<font><b><td>
<select name="type" style="border: 1px solid #989898">
<option value="0" ></option>
<option value="1" >2008</option>
<option value="2" >2009</option>
<option value="3" >2010</option>
<option value="4" >2011</option>
<option value="5" >2012</option>
<option value="6" >2013</option>
</font></b></td></select></td>

</br></br>
Numéro du gîte demandé: <select name="nogite">
<option value="0"></option>
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
</select>
</br></br>
<input type="submit" value="Envoyer"
<input type="reset" value="Annuler"/>

</form>
</pre>
</html></title>
</head>

</body>

</html>

Hors ligne

 

#4 01-04-2008 12:46:11

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Re: Aide pour formulaire d'envoie php vers base de données

J'ai vraiment besoin d'aide, j'attends vos réponses.

Hors ligne

 

#5 01-04-2008 17:12:35

Asherah
Membre
Date d'inscription: 15-11-2007
Messages: 159
Site web

Re: Aide pour formulaire d'envoie php vers base de données

evite de mettre le chemin complet "C:\PROGRA~1\EASYPH~1\www\Les gites du vertige\transfertclient.php"

si le fichier se trouve dans le meme repertoire que celui de ton formulaire, met "transfertclient.php" ou si il est dans un repertoire au dessus met "../transfertclient.php" et si il est a la racine met "./../transfertclient.php "


et zap easyphp prend Wamp car car easyphp gere a peine le php4

Dernière modification par Asherah (01-04-2008 17:13:17)

Hors ligne

 

#6 02-04-2008 06:43:31

Alkann
Membre
Lieu: Paris
Date d'inscription: 02-03-2008
Messages: 19
Site web

Re: Aide pour formulaire d'envoie php vers base de données

Pour compléter ce qu'à dit Asherah, les erreurs de notice proviennent de tes $_POST['nom_de_la_variable'] qui ne sont pas défini.

Je te conseille d'effectuer les tests avec la fonction isset()

Hors ligne

 

#7 02-04-2008 09:40:37

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Re: Aide pour formulaire d'envoie php vers base de données

Pourrais tu préciser où je devrais mettre cette fonction dans le php car je ne suis qu'un débutant. J'ai commencé à apprendre ceci cette année et j'en ai vraiment besoin pour mon épreuve de Bac. J'attends ta réponse.

Hors ligne

 

#8 02-04-2008 15:14:47

Asherah
Membre
Date d'inscription: 15-11-2007
Messages: 159
Site web

Re: Aide pour formulaire d'envoie php vers base de données

en general ca se met dans un test conditionnel (if)

"si ce champ est vide" ---> "if(empty($champ)){ "script a executer si la condition est rempli" }"

ou

"su ce champ est rempli" ----> "if(isset($champ)){ "script a executer si la condition est rempli" }"

donc la en l 'occurence tu va tester si ta variable transmise contient une valeur ou pas, ce qui eiteras de te retrouver avec des variable vide.

Dernière modification par Asherah (05-04-2008 18:56:40)

Hors ligne

 

#9 05-04-2008 11:29:56

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Re: Aide pour formulaire d'envoie php vers base de données

Bonjour,

Voilà maintenant mon problème :

Code:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 

<html> 
<body> 

<?php 

// Récupération et protection après la vérification de leur saisie dans le formulaire

if($_POST["nomcli"] && $_POST["prenomcli"] && $_POST["adressecli"] && $_POST["telcli"] && $_POST["melcli"] && $_POST["nores"] && $_POST["dateresdeb"] && $_POST["dateresfin"] && $_POST["nogite"]) 
{ 
$nomcli=mysql_real_escape_string(htmlspecialchars($_POST["nomcli"])); 
$prenomcli=mysql_real_escape_string(htmlspecialchars($_POST["prenomcli"])); 
$adressecli=mysql_real_escape_string(htmlspecialchars($_POST["adressecli"])); 
$telcli=mysql_real_escape_string(htmlspecialchars($_POST["telcli"])); 
$melcli=mysql_real_escape_string(htmlspecialchars($_POST["melcli"])); 
$nores=mysql_real_escape_string(htmlspecialchars($_POST["nores"])); 
$dateresdeb=mysql_real_escape_string(htmlspecialchars($_POST["dateresdeb"])); 
$dateresfin=mysql_real_escape_string(htmlspecialchars($_POST["dateresfin"])); 
$nogite=mysql_real_escape_string(htmlspecialchars($_POST["nogite"])); 
} 
else
{
die("vous n'avez pas rempli entièrement votre formulaire");
}

// Affichage d'un message de contrôle 

echo "Cher(e) ".$nomcli." ".$prenomcli.",<br/>"; 
echo "Vous désirez réserver le gîte numéro ".$nogite."."; 

// Connexion au serveur MySQL 

$db=mysql_connect("localhost","root","GSI") or die("erreur de connexion".mysql_error()); 

// Ouverture de la base Gîte du vertige 

mysql_select_db("Gite du vertige",$db) or die("erreur de connexion à la base Gite du vertige"); 

// Requête d'insertion des valeurs dans la table client 

$sql="INSERT INTO client (nomcli, prenomcli, adressecli, telcli, melcli, nores) 
VALUES('$nomcli','$prenomcli','$adressecli','$telcli','$melcli','$nores')"; 

// Exécution de la requête 

mysql_query($sql); 

// Requête d'insertion des valeurs dans la table reservation 

$sql="INSERT INTO reservation (nores, dateresdeb , dateresfin, nogite) 
VALUES('$nores','$dateresdeb','$dateresfin','$nogite')"; 

// Exécution de la requête 
  
mysql_query($sql); 

echo "<br/><br/> Vos données ont bien été envoyées dans notre base de données. Nous vous enverrons un mail dès que possible pour vous informer de la disponibilité du gîte"; 

// Fermeture de la connexion à MySql 

mysql_close(); 
?> 
</body> 
</html>

Et on m'affiche ceci :

Notice: Undefined index: nomcli in c:\program files\easyphp1-8-modgsi\www\les gites du vertige\transfertclient3.php on line 10
vous n'avez pas rempli entièrement votre formulaire


La ligne 10 :

Code:

if($_POST["nomcli"] && $_POST["prenomcli"] && $_POST["adressecli"] && $_POST["telcli"] && $_POST["melcli"] && $_POST["nores"] && $_POST["dateresdeb"] && $_POST["dateresfin"] && $_POST["nogite"])


J'attends vos réponses.

Dernière modification par Brendon92 (05-04-2008 11:35:17)

Hors ligne

 

#10 05-04-2008 17:11:53

Asherah
Membre
Date d'inscription: 15-11-2007
Messages: 159
Site web

Re: Aide pour formulaire d'envoie php vers base de données

remplace ca:

Code:

if($_POST["nomcli"] && $_POST["prenomcli"] && $_POST["adressecli"] && $_POST["telcli"] && $_POST["melcli"] && $_POST["nores"] && $_POST["dateresdeb"] && $_POST["dateresfin"] && $_POST["nogite"])

par

Code:

if(isset($_POST["nomcli"]) && isset($_POST["prenomcli"]) && isset($_POST["adressecli"]) && isset($_POST["telcli"]) && isset($_POST["melcli"]) && isset($_POST["nores"]) && isset($_POST["dateresdeb"]) && isset($_POST["dateresfin"]) && isset($_POST["nogite"]))

Hors ligne

 

#11 07-04-2008 00:58:17

Brendon92
Membre
Date d'inscription: 01-04-2008
Messages: 7

Re: Aide pour formulaire d'envoie php vers base de données

Bonjour, merci de votre réponse. J'ai donc fait comme vous m'aviez dit et lorsque je rempli mon formulaire et que je l'envoie, je reçois ce message : "Vous n'avez pas rempli entièrement votre formulaire".
Voici mon script :

Code:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 

<html> 
<body> 

<?php 

// Récupération et protection après la vérification de leur saisie dans le formulaire

if(isset($_POST["nomcli"]) && isset($_POST["prenomcli"]) && isset($_POST["adressecli"]) && isset($_POST["telcli"]) && isset($_POST["melcli"]) && isset($_POST["nores"]) && isset($_POST["dateresdeb"]) && isset($_POST["dateresfin"]) && isset($_POST["nogite"])) 
{ 
$nomcli=mysql_real_escape_string(htmlspecialchars($_POST["nomcli"])); 
$prenomcli=mysql_real_escape_string(htmlspecialchars($_POST["prenomcli"])); 
$adressecli=mysql_real_escape_string(htmlspecialchars($_POST["adressecli"])); 
$telcli=mysql_real_escape_string(htmlspecialchars($_POST["telcli"])); 
$melcli=mysql_real_escape_string(htmlspecialchars($_POST["melcli"])); 
$nores=mysql_real_escape_string(htmlspecialchars($_POST["nores"])); 
$dateresdeb=mysql_real_escape_string(htmlspecialchars($_POST["dateresdeb"])); 
$dateresfin=mysql_real_escape_string(htmlspecialchars($_POST["dateresfin"])); 
$nogite=mysql_real_escape_string(htmlspecialchars($_POST["nogite"])); 
} 
else
{
die("Vous n'avez pas rempli entièrement votre formulaire");
}

// Affichage d'un message de contrôle 

echo "Cher(e) ".$nomcli." ".$prenomcli.",<br/>"; 
echo "Vous désirez réserver le gîte numéro ".$nogite."."; 

// Connexion au serveur MySQL 

$db=mysql_connect("localhost","root","GSI") or die("erreur de connexion".mysql_error()); 

// Ouverture de la base Gîte du vertige 

mysql_select_db("Gite du vertige",$db) or die("erreur de connexion à la base Gite du vertige"); 

// Requête d'insertion des valeurs dans la table client 

$sql="INSERT INTO client (nomcli, prenomcli, adressecli, telcli, melcli, nores) 
VALUES('$nomcli','$prenomcli','$adressecli','$telcli','$melcli','$nores')"; 

// Exécution de la requête 

mysql_query($sql); 

// Requête d'insertion des valeurs dans la table reservation 

$sql="INSERT INTO reservation (nores, dateresdeb , dateresfin, nogite) 
VALUES('$nores','$dateresdeb','$dateresfin','$nogite')"; 

// Exécution de la requête 
  
mysql_query($sql); 

echo "<br/><br/> Vos données ont bien été envoyées dans notre base de données. Nous vous enverrons un mail dès que possible pour vous informer de la disponibilité du gîte"; 

// Fermeture de la connexion à MySql 

mysql_close(); 
?> 
</body> 
</html>

Mon but est d'envoyer les informations, rentrées dans le formulaire, vers ma base de données. Pouvez-vous m'aider s'il vous plaît ?

Dernière modification par Brendon92 (07-04-2008 00:58:42)

Hors ligne