Posez votre question Signaler

PHP-Formulaire.Comment récupérer les données [Résolu]

midiweb - Dernière réponse le 2 juil. 2011 à 19:02
salut, suis débutant en php.J'ai créé un formulaire et script php qui traite les données entrées par l'internaute. Mon script semble n'avoir aucune erreurr sous Zend studio. Mais sur le serveur, je ne peux récupérer les données envoyées par l'utilisateur c.à.d que je ne sais pas ce qu'il a écrit. Dois-.je mettre une fonction email? Je voudrais récuperer automatiquement les données dans un fichier texte ou dans une base de données MySql. Comment faire? Ci-joints le formuliare et le script de traitement.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Document sans nom</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body bgcolor="#000000" text="#FFFFFF" >
<form action="traitement.php" method="post" enctype="multipart/form-data" name="formulaire">
<strong><font color="#FFFFFF" face="Arial, Helvetica, sans-serif">Nom</font></strong>
<input name="nom" type="text" size="30" maxlength="30" >
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Prénom</strong></font>
<input name="prenom" type="text" size="30" maxlength="30" >
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Email</strong></font>
<input name="email" type="text" value="Forme: nom@mail" size="25" maxlength="30" ><br><br>
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Âge</strong></font>
<input name="sexe" type="text" size="2" maxlength="2">
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Sexe</strong></font>
<label>
<input name="sexe" type="radio" value="F">
Femme</label>

<label>
<input type="radio" name="sexe" value="H">
Homme</label>
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Profession</strong></font>
<input name="job" type="text" size="30" maxlength="30" ><br><br>
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Entrez ci-dessous votre texte:</strong></font><br>
<br>
<textarea name="texte" cols="90" rows="25"></textarea><br><br>
<input name="envoyer" type="submit" value="Envoyer">
<input name="Recommencer" type="reset" value="Recommencer">
<font color="#FFFFFF" size="3" face="Arial, Helvetica, sans-serif"><strong>Attaché</strong></font>
<input name="Fichier" type="file" size="25">
</form>
</body>
</html>

et le script de traitement traitement.php

<HTML>
<BODY bgcolor="Black" text="White">

<?
echo "<U>Vous avez écrit:</U>"."<br><br>";
echo "<strong>Votre nom:</strong>" .$_REQUEST['nom']."<br>";
echo "Votre prénom: ".$_REQUEST['prenom']."<br>";
echo "Votre email: ".$_REQUEST['email']."<br>";
echo "Votre profession: ".$_REQUEST['job']."<br>";
echo "Votre sexe: ". $_REQUEST['sexe']."<br>";
echo "Votre message: ". $_REQUEST['texte']."<br>";
?>
<a href="index.html">Confirmer</a>
<a href="formulaire.html">Cliquez ici pour recommencer !</a>
</BODY>
</HTML>


merci de votre aide.
Lire la suite 
Réponse
+12
moins plus
Salut,
si tu veux recuperer les donnees dans une base, il suffit de se connecter a la base :

$server = '...';
$user = '...';
$pass = '...';
$table = '...';

mysql_pconnect($server, $user, $pass)
or die("Impossible de se connecter au serveur $server");
ensuite se choisir la base :
mysql_select_db($db)
or die("impossible de se connecter à la base $db");

puis faire la requete :
$query = "INSERT INTO $table (champs 1, champs 2, ...) "
. "VALUES "
. "('$valeur 1', '$valeur 2', '...')";
$resultat = mysql_query($query)
or die("L'insertion a echouée car ". mysql_error() .".");

et voila.
Tiens moi au courant, a plus.
leila hajmeftah- 17 avril 2009 à 13:19
bonjour
comment récupérer des champs de textes saisi d' un formulaire flash dans une page php
Répondre
Ajouter un commentaire
Réponse
+6
moins plus
D'ailleurs pour affiner tout ça, ton code php pour insérer les données sera:

$server = '...';
$user = '...';
$pass = '...';
$table =formulaire;

mysql_pconnect($server, $user, $pass)
or die("Impossible de se connecter au serveur $server");
 /* ensuite se choisir la base : */
mysql_select_db($db)
or die("impossible de se connecter à la base $db");


*/Récupérer les données */

$nom=$_POST['nom'];
$prenom=$_POST['prenom'];  /*et ainsi de suite */


/* puis faire la requete : */
$query = "INSERT INTO $table (nom, prenom, ...) 
VALUES ('$nom', '$prenom', '...')";

$resultat = mysql_query($query)
or die("L'insertion a echouée car ". mysql_error() ."."); 


Voilou....Plus de détails ici => http://www.phpfrance.com/tutorials/

Kilian, débutant en tâche de fond.....
nicodhino- 22 juin 2011 à 14:45
attention

$server = '...';
$user = '...';
$pass = '...';
$table =formulaire; -> $db=formulaire;
Répondre
Ajouter un commentaire
Réponse
+3
moins plus
salut. merci de votre réponse rapide, trop rapide, j'ai même pas le temps de commencer ma formation mySql :-)En fait je voulais récupérer les données d'abord sans MySql, ...En passant, je disais MySql. Mais j'apprends vite. Je vous tiens au courant, un courant alternatif!!:-) Merci encore. A+
Ajouter un commentaire
Réponse
+3
moins plus
Bonjour,

J'essaye de creer un formulaire avec des listes deroulantes et plusieurs reponses possibles ... mais pas moyen de les transferer dans ma bdd mysql, je bloque, pas d'idees !!

quelqu'un peut m'aider ???

j'ai vu sur quelques sites qu'il fallait utiliser foreach, mais je comprends pas comment ni ce que ca fait !!

merci pour votre aide
MmeLaProviseur- 2 juil. 2011 à 19:02
Tout simplement tecris un name d'un ton formulaire ex:
<input type="text" name="message">

en php:
<?php
$donnes = fopen('donnesrecu.txt),'a';
fwrite 'donnes recu' . $_POST['message'] . ;
fclose($donnes)
?>
Répondre
Ajouter un commentaire
Réponse
+2
moins plus
N'oublies pas de créer une table au préalable dans ta base de données :

CREATE TABLE formulaire(
nom varchar(12),
prenom varchar(12),
email varchar(25),
profession varchar(30),
sexe varchar(8),
message text
);



Kilian, débutant en tâche de fond.....
Tim- 29 janv. 2009 à 10:52
Bonjour, je travaille égalent de mon côté sur un formulaire. J'avais déjà fait un sujet à ce sujet... sur le forum.
Comme il ya le même genre ici, je viens ici

Le fait que je suis une buse en code et script, je cherche tout de même à apprendre sur le tas, mais c compliqué tt de même lol

Bref, juste une question, grâce à mon hébergeur, j'ai pu obtenir, le code dont vous parlez ci dessus. Le mien est ainsi :

CREATE TABLE `C01025_taxi`.`Enquete` (
`Deb` VARCHAR( 3 ) NOT NULL ,
`Type` VARCHAR( 5 ) NOT NULL ,
`Freqnat` VARCHAR( 4 ) NOT NULL ,
`Freqreg` VARCHAR( 7 ) NOT NULL ,
`dplct` VARCHAR( 3 ) NOT NULL ,
`dispo` VARCHAR( 3 ) NOT NULL ,
`moyendplct` VARCHAR( 5 ) NOT NULL ,
`moyendplctautre` VARCHAR( 12 ) NOT NULL ,
`minibus` VARCHAR( 3 ) NOT NULL ,
`service` VARCHAR( 12 ) NOT NULL ,
`serviceautre` VARCHAR( 15 ) NOT NULL ,
`age` VARCHAR( 5 ) NOT NULL ,
`ageautre` VARCHAR( 2 ) NOT NULL ,
`sexe` VARCHAR( 1 ) NOT NULL ,
`club` VARCHAR( 20 ) NOT NULL
) ENGINE = MYISAM

Cela dit où dois je le placer ?
Si je reprends l'exemple initial, sur la page formulaire ou sur celle traitement ?
à quel endroit exactement ?
Répondre
kilian 8898Messages postés vendredi 19 septembre 2003Date d'inscription ModérateurStatut 1 août 2014 Dernière intervention - 29 janv. 2009 à 11:15
Salut,

Ce code est une création de table. Il faut que tu l'executes en utilisant un client mysql.

Le plus facile c'est d'utiliser phpmyadmin, qui est généralement fourni par les hebergeurs.
Ca dépend de ton hebergement en fait.
Répondre
Tim- 29 janv. 2009 à 12:05
en effet, merci de ta réponse,

entre temps et en bidouillant, j'ai pu le remarquer...
Répondre
Tim kilian - 29 janv. 2009 à 13:16
Petit à petit j'avance et comprend ce que je fais, cela dit, je suis coincé
Voici ce que j'ai écrit (ou repris, voir plus haut ;-) )

mysql_pconnect($server, $user, $pass)
or die("Impossible de se connecter au serveur $server");
ensuite se choisir la base :
mysql_select_db($db)
or die("impossible de se connecter à la base $db");

Bien sur je précise les différents éléments, mais malheureusement lors d'essais, il apparaît qu'il est impossible de se connecter à la base.
Pourtant elle existe bien chez mon hébergeur...

Quelqu'un voit il à quoi cela est du ?
Répondre
kilian 8898Messages postés vendredi 19 septembre 2003Date d'inscription ModérateurStatut 1 août 2014 Dernière intervention - 29 janv. 2009 à 14:03
Tu es certain de ces 3 éléments?
$server, $user, $pass

Tu l'as mis sur ton serveur ce script?
Répondre
Ajouter un commentaire
Réponse
+2
moins plus
Oh faut pas avoir peur avec Mysql, les bases sont faciles à assimiler.
Dans le lien que je t'ai donné ils apprennent les bases necessaires...

Kilian, débutant en tâche de fond.....
Ajouter un commentaire
Réponse
+2
moins plus
est ce que quelqu'un pourrait m'aider je voudrais savoir si on peut envoyer de fausses données a un serveur php . par ex un site de jeux en ligne avec un serveur php dans le jeu on a des ressources or et autres . est ce qu'on pourrait envoyer une valeur autre que celle que l'on possede . ex j'ai 100000 or et je veux leur envoyer une valeur indiquant que j'ai 200000 or
Ajouter un commentaire
Réponse
+2
moins plus
bonjour tout le monde.tout d'abord j'aimerai vous dire que je veux creer un chat et je me suis servit de votre petit exemple plus haut pour le creer mais voila mon probléme : les messages apré avoir entrer le login et le message , ne s'affiche pas.rien ne saffiche juste la fenetre précedente.voila mon script :

<html><head><META HTTP-EQUIV="Refresh" CONTENT="30; URL=http://dkinformatique.ifrance.com/forum.php">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>FORUM</title><meta name="keywords" content=""><meta name="author" content="Bruno Castagné"></head>
<STYLE type="text/css">
BODY {scrollbar-face-color: #FFCC33; scrollbar-shadow-color: #000000;
scrollbar-highlight-color: #FFCC33; scrollbar-3dlight-color: #000000;
scrollbar-darkshadow-color: #000000; scrollbar-track-color: #000000;
scrollbar-arrow-color: #990000;}
.tab1 { font-weight:bold; color:#ffffff; font-size:13px;font-family:tahoma }
.tabr {font-weight:bold; color:#000000; font-size:10px;font-family:verdana }
A {color:#99FF99; }
input {background-color:#FFCC33;color:#990000;font-weight:bold }
textarea {background-color:#FFCC33;color:#990000;font-weight:bold }
</STYLE>
<body bgcolor="#ffffcc" text="#9966ff" link="#0000ff" vlink="#800080" alink="#ff0000">
<form name="f" action="forum.php" method="post">
</form>
<?php
$host="xxxx";
$user="xxxx";
$pw="xxxxx";
$db="xxxx";// ou votre base de données....
$my_sql=mysql_connect($host,$user,$pw) or die(mysql_error());mysql_select_db("$db") or die(mysql_error());

?>

<form action=# method=POST>
login
<input type="text" name="login">
message
<input type="text" name="message">
<input type="submit" value="Envoyer">
</form>
<?php
$login=$_POST[login];
$message=$_POST[message];
if(empty($_POST[login])||empty($_POST[message])){
echo 'Merçi de tt remplir';
}
else{
mysql_query("insert into chat values ('','$_POST[login]','$_POST[message]'");
}
$aff=mysql_query("select * from chat order by id DESC limit 0,10");
while($af=mysql_fetch_array($aff)){
echo $af[login].' dit : '.$af[message].'<br><br>';
}
?>
</body></html>



voila merci de m'aider.
Ajouter un commentaire
Réponse
+1
moins plus
Super, je vais pouvoir presque comprendre pourquoi ça ne marche pas ce que j'ai fait avec ton prototype.
Mais une petite question que je n'arrive pas à trouver la réponse :
Sur mon formulaire, j'ai un rappel du "pseudo" et de l'"email".
Ce pseudo et cet email est pris dans une table "membre".
Le formulaire lui insèrera des données dans une autre table "donnesmembre".
Bon, en sachant que c'est une zone protégée du membre, comment inséré les données dans ma table (en incluant le fait que cette table fera aussi apparaitre le pseudo et l'email.
Dois insclure dans les valeurs le pseudo et l'email ? tel que :
VALUES ('$pseudo, '$email, '$sexe',$situatfamill',...')";
Ne dois pas aussi inclure 'id_membre' et qui représente la clé de la table qui s'incrémente automatiquement ?

Merci pour cette aide précieuse car je suis un peu perdu dans tous ces tutoriaux;

Bic
Mary
Ajouter un commentaire
Réponse
+1
moins plus
Salut.

J'ai pas tout compris à ce que tu as dit, mais pour l'auto incrément ne renseigne pas le champ, ça se fera automatiquement à l'enregistrement. C'est d'ailleur le principe d'un truc automatique !
Ajouter un commentaire
Réponse
+1
moins plus
bonjour j'ai lu votre conversation mais moi je ss un debutant et je comprens pas je que:
$server = '...';
$user = '...';
$pass = '...';
$table = '...';

Signifis merci de votre aidee !!
Ajouter un commentaire
Réponse
+1
moins plus
Ton ami google t'aidera, alors, les mots tu comprendra...

*part en sifflotant*
Ajouter un commentaire
Réponse
+1
moins plus
Ajouter un commentaire
Réponse
+1
moins plus
Débutant en PHP, besoin d'un script qui recupère des données d'une table et les insert avec les données d'une autre tables de la même( un tuple).
Merci d'avance
Ajouter un commentaire
Réponse
+1
moins plus
Salut,je viens de creer une petite base sur phpadmin je veux savoir comment je dois posseder pour inserer des donnees dans ma base sur l'interface web que je vais creer.
Ajouter un commentaire
Réponse
+1
moins plus
Bonjour à tous,
je voudrais savoir , le code php qui relie ma base de donnée et mon formulaire pour récupérer le(nom,prenom,classe) dans ma base .
cordialelement
Ajouter un commentaire
Réponse
+0
moins plus
oui mais j'en ai besoin c urgen . de l'aide stp
Ajouter un commentaire
Réponse
+0
moins plus
je suis pas un programeur mais j'aurais bien voulu t'aider . aidez le les mecs
Ajouter un commentaire
Ce document intitulé «  PHP-Formulaire.Comment récupérer les données  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.