Problème avec formulaire et traitement.php

sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   -  
gamrabde Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous,
me suis lancé dans la création d un formulaire permettant de saisir des données, qui seraient ensuite traitées dans un fichier nommé traitement.php.
Le code donne ca :

<!DOCTYPE html>
<html>
<head>
<title>formulaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p><h2>Saisir les dernieres modifications de salle </h2></p>
<form method=post action="traitement.php">
<table border=1>
<tr>
<td><label for="Enseignant">Enseignant(s)</label></td>
<td><input type="text" name="Enseignant" id="Enseignant" />
</tr>
<tr>
<td><label for="Salle">Salle</label></td>
<td><input type="text" name="Salle" id="Salle" />
</tr>
<tr>
<td><label for="Date">Date</td>
<td><input type="text" name="Date" id="Date" />
</tr>
<tr>
<td><label for="Horaire">Horaire</label></td>
<td><input type="text" name="Horaire" id="Horaire" />
</tr>
<tr>
<td><label for="Numero">Numero de cours</label></td>
<td><input type="text" name="Numero" id="Numero" />
</tr>
<tr>
<td><label for="Type">Type</label></td>
<td><input type="text" name="Type" id="Type" />
</tr>
<tr>
<td><label for="Titre">Titre du cours</label></td>
<td><input type="text" name="Titre" id="Titre" />
</tr>
<tr>
<td><label for="Nouvelle">Nouvelle salle</label></td>
<td><input type="text" name="Nouvelle" id="Nouvelle" />
</tr>
<tr>
<td><label for="Remarque">Remarque(s)</label></td>
<td><input type="text" name="Remarque" id="Remarque" />
</tr>
</table>
<p>
<input type="submit" value="Envoyer" />
<input type="reset" value="Effacer" />
</p>
</form>
</body>
<//html>

Par la suite j'ai donc crée un fichier traitement.php censé recevoir les informations envoyées après avoir cliquer sur le bouton "Envoyer" , j'ai voulu faire des tests juste avec les champs "Type" et "Date" mais cela ne fonctionne pas :

<!DOCTYPE html>
<html>
<head>
<title>Fichier de traitement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?
if (isset($_POST['Type']) && isset(£_POST['Date'])) {
echo 'Le type est' .$_POST['Type']. 'et la date est' -$_POST['Date'];
}
?>
</body>
</html>

Pour le server Web j'utilise Wamp.
Et mon problème est donc que lorsque que je saisis des données dans le champ Type et Date de formulaire.hmtl et que je clique sur le bouton "Envoyer" , cela m'ouvre la page traitement.php mais celle ci est vide et n affiche rien...c'est probablement rien mais je n'arrive pas à le résoudre, une âme charitable :D pourrait elle m aider ?
Merci beaucoup d'avance ;)

20 réponses

ze-life-of-quent1 Messages postés 1582 Date d'inscription   Statut Membre Dernière intervention   776
 
Bonjour,
la prochaine fois, pourriez-vous poster votre code sur pastebin.com (il permet la coloration syntaxique et garde l'indentation) svp?

Sinon, l'erreur se trouve sur traitement.php. Vous avez marqué
isset(£_POST['Date'])
au lieu de
isset($_POST['Date'])
ainsi que
 'et la date est' -$_POST['Date']; 
au lieu de
 'et la date est' .$_POST['Date']; 


Pas de support par message privé. Et si on pouvais m'appeler Quentin (ça fait plus classe que "ze-life" ^^).
1
gamrabde Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   11
 
bonjour,

si vous avez toujours besoin d'une réponse vous une autre personne voici le code pour récupérer et afficher les données de la table MySQL:

<?PHP
$con = mysql_connect (" localhost ", " user ", " pwd ") ;
if (! $con)
{
die (" pas de connexion : ". mysql_error ());
}
mysql_select_db (" maBase ", $con) ;
$result = mysql_query("SELECT * FROM visiteurs");
while($Data = mysql_fetch_array($result))
{
echo $Data['nom'] . " " . $Data['prenom'] . " " . $Data['age'] . " " . $Data['paye'] . " " . $Data['sexe'] . " " . $Data['date_inscri'];
echo "<br />";
}
mysql_close ($con) ;
?>

où nom, prenom, age ... sont les champs de la table MySQL visiteurs et le nom de la table

et je vous invite à visiter ce lien il vous sera bien utile:

http://apprendre-creer-sites.com/php/bdd-mysql-select.php
1
noerubiks Messages postés 159 Date d'inscription   Statut Membre Dernière intervention   37
 
Bonjour, je crois que la page traitement.php n'affiche rien car les variable type et date n'existe pas, car il me semble qu'il faut mettre les guillemets dans
<form method="POST" action="traitement.php">

(vous les avez oublié à post !)

Bonne continuation ! ;)
0
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   1 641
 
slt

tu as mis un £ au lieu de $

if (isset($_POST['Type']) && isset(£_POST['Date'])) {
et il te manque un </label> sur le champ date
et ' -$_POST['Date'];


ze-life-of-quent1, javais pas vu ton message !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Salut !
Merci à tous pour vos réponses ;)
J'ai donc effectué les changements que vous m'avez signalé mais ca ne marche toujour pas ....

<!DOCTYPE html>
<html>
<head>
<title>Fichier de traitement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?
if (isset($_POST['Type']) && isset($_POST['Date'])) {
echo 'Le type est' .$_POST['Type']. 'et la date est' .$_POST['Date'];
}
?>
</body>
</html>



<!DOCTYPE html>
<html>
<head>
<title>formulaire</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<p><h2>Saisir les dernieres modifications de salle </h2></p>
<form method="post" action="traitement.php">
<table border=1>
<tr>
<td><label for="Enseignant">Enseignant(s)</label></td>
<td><input type="text" name="Enseignant" id="Enseignant" />
</tr>
<tr>
<td><label for="Salle">Salle</label></td>
<td><input type="text" name="Salle" id="Salle" />
</tr>
<tr>
<td><label for="Date">Date</label></td>
<td><input type="text" name="Date" id="Date" />
</tr>
<tr>
<td><label for="Horaire">Horaire</label></td>
<td><input type="text" name="Horaire" id="Horaire" />
</tr>
<tr>
<td><label for="Numero">Numero de cours</label></td>
<td><input type="text" name="Numero" id="Numero" />
</tr>
<tr>
<td><label for="Type">Type</label></td>
<td><input type="text" name="Type" id="Type" />
</tr>
<tr>
<td><label for="Titre">Titre du cours</label></td>
<td><input type="text" name="Titre" id="Titre" />
</tr>
<tr>
<td><label for="Nouvelle">Nouvelle salle</label></td>
<td><input type="text" name="Nouvelle" id="Nouvelle" />
</tr>
<tr>
<td><label for="Remarque">Remarque(s)</label></td>
<td><input type="text" name="Remarque" id="Remarque" />
</tr>
</table>
<p>
<input type="submit" value="Envoyer" />
<input type="reset" value="Effacer" />
</p>
</form>
</body>
<//html>


Avec Wamp sous C:/Wamp/www j ai mis mon formulaire .html ainsi que mon ttraitement.php c est peut etre de la que viens l erreur ?
Merci encore :)
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
PS : dsl Quent1 j ai utilisé pastebin mais visiblement tres mal !
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Pas d'idée ? :(
0
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   1 641
 
ton code marche parfaitement, je viens de tester

il faut virer:
<!DOCTYPE html>
<html>
<head>
<title>Fichier de traitement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>

et

</body>
</html>

autour de ton traitement php si tu veux que ça fonctionne

et puis ajoute aussi php à la suite de ton 1er <? = <?php



<!DOCTYPE html> 
<html> 
<head> 
<title>formulaire</title> 
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> 
</head> 
<body> 
<p><h2>Saisir les dernieres modifications de salle </h2></p> 
<form method="post" action="test_form.php"> 
<table border=1> 
<tr> 
<td><label for="Enseignant">Enseignant(s)</label></td> 
<td><input type="text" name="Enseignant" id="Enseignant" /> 
</tr> 
<tr> 
<td><label for="Salle">Salle</label></td> 
<td><input type="text" name="Salle" id="Salle" /> 
</tr> 
<tr> 
<td><label for="Date">Date</label></td> 
<td><input type="text" name="Date" id="Date" /> 
</tr> 
<tr> 
<td><label for="Horaire">Horaire</label></td> 
<td><input type="text" name="Horaire" id="Horaire" /> 
</tr> 
<tr> 
<td><label for="Numero">Numero de cours</label></td> 
<td><input type="text" name="Numero" id="Numero" /> 
</tr> 
<tr> 
<td><label for="Type">Type</label></td> 
<td><input type="text" name="Type" id="Type" /> 
</tr> 
<tr> 
<td><label for="Titre">Titre du cours</label></td> 
<td><input type="text" name="Titre" id="Titre" /> 
</tr> 
<tr> 
<td><label for="Nouvelle">Nouvelle salle</label></td> 
<td><input type="text" name="Nouvelle" id="Nouvelle" /> 
</tr> 
<tr> 
<td><label for="Remarque">Remarque(s)</label></td> 
<td><input type="text" name="Remarque" id="Remarque" /> 
</tr> 
</table> 
<p> 
<input type="submit" value="Envoyer" /> 
<input type="reset" value="Effacer" /> 
</p> 
</form> 
</body> 
</html> 

<?php
if (isset($_POST['Type']) && isset($_POST['Date'])) { 
echo 'Le type est' .$_POST['Type']. 'et la date est' .$_POST['Date']; 
} 
?> 
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Mes fichiers formulaire.html et traitement.php doivent bien être placés dans le même dossier à savoir c:/Wamp/www ?
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Ou peut être faut il une config spéciale de Wamp ? Merci pour votre aide
0
astuces72 Messages postés 7769 Date d'inscription   Statut Membre Dernière intervention   1 641
 
oui

a oui ce sont deux fichiers...
traitement.php
<!DOCTYPE html>
<html>
<head>
<title>Fichier de traitement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
if (isset($_POST['Type']) && isset($_POST['Date'])) {
echo 'Le type est' .$_POST['Type']. 'et la date est' .$_POST['Date'];
}
?>
</body>
</html>
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Merci astuces72 d'essayer de m'aider.
Si je reprend le code de test_form.php et que je tape 127.0.0.1/test_form.php cela marche mais ca affiche le resultat juste en dessous de mon formulaire...
En revanche après avoir rajouter <?php dans mon code de traitement.php ca n'affiche toujours rien...en fait lorsque je clique sur "Envoyer" j arrive sur la page c:/wamp/www/traitement.php mais c est une page blanche...je pense que le problème vient plutot de la...?
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Problème résolu avec EasyPHP si jamais ;)
Merci à tous !
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Ceci dit encore une question :
est ce que c est possible d ajouter des balises <MARQUEE> </MARQUEE> a mon code traitement.php afin de faire défiler le texte résultant des données saisies dans mon formulaire...?


<!DOCTYPE html>
<html>
<head>
<title>Fichier de traitement</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<body>
<?php
if (isset($_POST['Titre']) && isset($_POST['Nouvelle'])) {
echo 'Le cours ' .$_POST['Titre'].
' ayant pour code ' .$_POST['Numero'].
' donne par ' .$_POST['Enseignant'].
' dans la salle ' .$_POST['Salle'].
' le ' .$_POST['Date'].
' a ' .$_POST['Horaire'].
' aura finalement lieu en ' .$_POST['Nouvelle'];
}
?>
</body>
</html>
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
A present tout fonctionne très bien, j en profite pour remercier encore une fois ce qui ont eu la gentillesse de me filer un coup de main.
Mon formulaire marche très bien et les données sont bien traitées et affichées par mon fichier traitement.php et en defilant svp ! :D
Le but final est de recueillir les informations (via mon formulaire) mais de plusieurs utilisateurs....et que donc mon fichier traitement.php traite et affiche plus d' une saisie effetuée après avoir cliquer sur "Envoyer"....comment faire ? dois je créer une table MySQL ? qui sera ensuite traitée en PHP ?
Merci beaucoup de m'éclairer...encore !
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Un petit up !
Salut à tous, je suis toujours sur le même projet et j'ai une question bête...
J'ai crée un formulaire avec le fichier add.php :

<?php
// On commence par récupérer les champs
if(isset($_POST['Enseignant'])) $Enseignant=$_POST['Enseignant'];
else $Enseignant="";

if(isset($_POST['Salle'])) $Salle=$_POST['Salle'];
else $Salle="";

if(isset($_POST['Date'])) $Date=$_POST['Date'];
else $Date="";

if(isset($_POST['Horaire'])) $Horaire=$_POST['Horaire'];
else $Horaire="";

if(isset($_POST['Numero'])) $Numero=$_POST['Numero'];
else $Numero="";

if(isset($_POST['Titre'])) $Titre=$_POST['Titre'];
else $Titre="";

if(isset($_POST['Nouvelle'])) $Nouvelle=$_POST['Nouvelle'];
else $Nouvelle="";

if(isset($_POST['Remarque'])) $Remarque=$_POST['Remarque'];
else $Remarque="";

{
// connexion à la base
$db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error());
// sélection de la base

mysql_select_db('phpmyadmin',$db) or die('Erreur de selection '.mysql_error());

// on écrit la requête sql
$sql = "INSERT INTO infos_tbl(id, Enseignant, Salle, Date, Horaire, Numero, Titre, Nouvelle, Remarque) VALUES('','$Enseignant','$Salle','$Date','$Horaire','$Numero','$Titre','$Nouvelle','$Remarque')";

// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

// on affiche le résultat pour le visiteur
echo 'Vos infos on été ajoutées.';

mysql_close(); // on ferme la connexion
}
?>

et aussi un fichier scdform.html :

<html>
<form method="POST" action="add.php">
<center>
<p><h2>Saisir les dernieres modifications de salle </h2></p>
<input type="text" name="Enseignant" size="20" value="Enseignant" maxlength="35"><br>
<input type="text" name="Salle" size="20" value="Salle" maxlength="35"><br>
<input type="text" name="Date" size="20" value="Date" maxlength="70"><br>
<input type="text" name="Horaire" size="20" value="Horaire" maxlength="11"><br>
<input type="text" name="Numero" size="20" value="Numero" maxlength="70"><br>
<input type="text" name="Titre" size="20" value="Titre" maxlength="255"><br>
<input type="text" name="Nouvelle" size="20" value="Nouvelle" maxlength="35"><br>
<input type="text" name="Remarque" size="20" value="Remarque" maxlength="35"><br>
<p>
<input type="submit" value="Envoyer" name="envoyer"><br>
<input type="reset" value="Effacer" /><br>
</p>
</center>
</form>
</html>

Tout fonctionne à merveille. Lorsque je saisis les informations dans mon formulaire, elles vont dans ma table mysql.
A present j aimerai afficher les données saisies et ce grace a ce bout de code que j ai trouvé :

<?php
mysql_connect("localhost", "root","" );
mysql_select_db("phpmyadmin");
$sql = mysql_query("SELECT * FROM membres" );
while($data = mysql_fetch_array($sql))
{
echo $data['id']." ".$data['nom']." ".$data['prenom']."<br/>" ;
}
mysql_close();
?>

Mais je ne sais pas ou je dois mettre ce bout de code... ?
Dans mon fichier add.php ? dans scdform.html ? ou dans un autre fichier a part ??
Merci pour votre aide :)
0
gamrabde Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   11
 
je m'excuse sylvin83 j'ai pas vu votre question .

visite le lien que j'ai donné il vous seras utile
0
Almanzo Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   2
 
tu n'aurais pas le lien d'un tuto pour les formulaire d'inscription stp ??? Merci beaucoup !!
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Je te remercie gamrabde .
La seule chose c est que je n arrive pas à savoir ou je suis censé mettre ce bout de code...?
Merci encore et bonne journée !
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Voila le code mis a jour :

<?php
// On commence par récupérer les champs
if(isset($_POST['Enseignant'])) $Enseignant=$_POST['Enseignant'];
else $Enseignant="";

if(isset($_POST['Salle'])) $Salle=$_POST['Salle'];
else $Salle="";

if(isset($_POST['Date'])) $Date=$_POST['Date'];
else $Date="";

if(isset($_POST['Horaire'])) $Horaire=$_POST['Horaire'];
else $Horaire="";

if(isset($_POST['Numero'])) $Numero=$_POST['Numero'];
else $Numero="";

if(isset($_POST['Titre'])) $Titre=$_POST['Titre'];
else $Titre="";

if(isset($_POST['Nouvelle'])) $Nouvelle=$_POST['Nouvelle'];
else $Nouvelle="";

if(isset($_POST['Remarque'])) $Remarque=$_POST['Remarque'];
else $Remarque="";

{
// connexion à la base
$db = mysql_connect('localhost', 'root', '') or die('Erreur de connexion '.mysql_error());
// sélection de la base

mysql_select_db('phpmyadmin',$db) or die('Erreur de selection '.mysql_error());

// on écrit la requête sql
$sql = "INSERT INTO infos_tbl(id, Enseignant, Salle, Date, Horaire, Numero, Titre, Nouvelle, Remarque) VALUES('','$Enseignant','$Salle','$Date','$Horaire','$Numero','$Titre','$Nouvelle','$Remarque')";

// on insère les informations du formulaire dans la table
mysql_query($sql) or die('Erreur SQL !'.$sql.'<br>'.mysql_error());

// on affiche le résultat pour le visiteur
echo 'Vos infos on été ajoutées.';

// on affiche les données saisies dans un tableau
echo"<table><tr><th>ID</th><th>Enseignant</th><th>Salle</th><th>Date</th><th>Horaire</th><th>Numero</th><th>Type</th><th>Titre</th><th>Nouvelle</th><th>Remarque</th></tr>" ;
while($row = mysql_fetch_array($result))
{
echo "<tr><td>".$row['Enseignant'] . "</td><td> ". $row['Salle'] . "</td><td> ". $row['Date'] . "</td><td> ". $row['Horaire'] . "</td><td> ". $row['Numero'] . "</td><td> ". $row['Type']. "</td><td> ". $row['Titre']. "</td><td> ". $row['Nouvelle']. "</td><td> ". $row['Remarque']. "</td><td></tr>";
}
echo "</table";

mysql_close(); // on ferme la connexion
}
?>
0
sylvain83 Messages postés 62 Date d'inscription   Statut Membre Dernière intervention   1
 
Mais j 'ai ce message d erreur :

Vos infos on été ajoutées.
Notice: Undefined variable: result in C:\Program Files\EasyPHP-12.1\www\add.php on line 45

Warning: mysql_fetch_array() expects parameter 1 to be resource, null given in C:\Program Files\EasyPHP-12.1\www\add.php on line 45
ID Enseignant Salle Date Horaire Numero Type Titre Nouvelle Remarque

Une idée ??
0
gamrabde Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   11
 
Bonjour,
vous avez utilisé dans votre boucle while la $result sans la définir avant.
Vous voulez afficher les données de votre table alors avant le while metttez cette ligne:
$result = mysql_query("SELECT * FROM infos_tbl");
0