Précédent   Forum des professionnels en informatique > PHP > Langage > Formulaires
Formulaires Forum d'entraide sur les formulaires avec PHP. Avant de poster -> FAQ formulaires, Cours de formulaires et Sources de formulaires
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/03/2008, 11h53   #1
Invité de passage
 
Inscription : mai 2007
Messages : 79
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 79
Points : 2
Points : 2
Par défaut Envoie données formulaire par mail

Bonjour

J'ai créé un formulaire avec envoie par mail

Toute mes variable sont envoyées sauf une

Celle qui pose problème c'est la varaible "demandeur"

En fait je récupére le nom du demandeur grace à une fonction qui identifie la personne logué sur le pc

Voici le bout du script concerné dans ma page formulaire:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
 
 
<?
function recup_name($ip){
// Ce script permet de récupérer le nom de l'utilisateur connecté.
// Il est basé sur la command nbtstat de windows, le nom utilisateur
// se trouvant sur la dernière ligne contenant "<03>"
 
 
$nbtstat = "nbtstat -a ".$ip;
 
 
exec ($nbtstat, $result);
foreach ($result as $row) {
if (strpos($row, "<03>")) {
$nom = strtok($row, " ");
}
 
}
return $nom;
}
 
$ip=getenv("REMOTE_ADDR");
if($ip=="127.0.0.1") //au cas ou on est en local
$ip=getenv("COMPUTERNAME");
?>
 
 
 
 
  <label>Demandeur : </label>
    <input name="demandeur" value= <? {echo recup_name($ip);} ?> size="30" type="text"><br>
Et voici mon scrip qui envoie par mail les données saisient dans mon formulaire
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
 
<?php
$msg_erreur = "Erreur. Les champs suivants doivent être obligatoirement remplis :<br/><br/>";
$msg_ok = "Votre demande a bien été prise en compte.";
$message = $msg_erreur;
// vérification des champs 
if (empty($_POST['nom'])) 
  $message .= "Nom<br/>";
if (empty($_POST['prenom'])) 
  $message .= "Prénom<br/>";
if (empty($_POST['service'])) 
  $message .= "Service<br/>";
if (empty($_POST['responsable'])) 
  $message .= "Responsable<br/>";
if (empty($_POST['profildereference'])) 
  $message .= "Profil de référence<br/>";
if (empty($_POST['date'])) 
  $message .= "Date<br/>";
if (empty($_POST['accesmessagerie'])) 
  $message .= "Accès à la messagerie<br/>";
if (empty($_POST['pcsupplementaire'])) 
  $message .= "Pc supplémentaire<br/>";
if (empty($_POST['telsupplementaire'])) 
  $message .= "Téléphone supplémentaire<br/>";
if (empty($_POST['casqueampli'])) 
  $message .= "Casque plus Ampli supplémentaire<br/>";
 
 
// si un champ est vide, on affiche le message d'erreur 
 
if (strlen($message) > strlen($msg_erreur)) {
 
  echo $message;
?>
<FORM>
<INPUT TYPE="BUTTON" VALUE=" Retour "
               onClick="history.back()">
  </FORM>
<?php
 
// sinon c'est ok 
} else { 
 
	foreach($_POST as $index => $valeur) {
   $$index = mysql_real_escape_string(trim($valeur));
  }
 
 
$TO = "toto@domaine.com";
$header  = "From: mailer@domaine.com\n";
$subject = "Date d'entrée: " .$_POST['date'];
$message = "NOM : ".$_POST['nom']."\n";
$message .= "PRENOM : ".$_POST['prenom']."\n";
$message .= "SERVICE : ".$_POST['service']."  -  RESPONSABLE :".$_POST['responsable']."\n";
$message .= "PROFIL DE REFERENCE : ".$_POST['profildereference']."\n";
$message .= "ACCES MESSAGERIE : ".$_POST['accesmessagerie']."\n";
$message .= "PC SUPPLEMENTAIRE : ".$_POST['pcsupplementaire']."\n";
$message .= "TELEPHONE SUPPLEMENTAIRE : ".$_POST['telsupplementaire']."\n";
$message .= "CASQUE + AMPLI SUPPLEMENTAIRE : ".$_POST['casqueampli']."\n";
$message .= "Remarque : \n".$_POST['remarque']."\n";
$message .= "Demandeur : ".$_POST['demandeur'];
if (mail($TO, $subject, $message, $header))
{
Header("Location: http://172.18.4.41/ok.htm");
}
}
 
?>
Pouvez vous m'aider

D'avance un grand merci
ju3979 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 12h13   #2
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 453
Points : 5 453
Bonjour

La question est "qu'est-ce que tu récupères exactement ?" Je te conseille de mettre un print_r($_POST) au début de la page qui récupère les informations du formulaire et de nous donner le résultat
Code :
1
2
3
echo '<pre>';
print_r($_POST);
echo '</pre>';
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 13h53   #3
Invité de passage
 
Inscription : mai 2007
Messages : 79
Détails du profil
Informations forums :
Inscription : mai 2007
Messages : 79
Points : 2
Points : 2
en fait dans le mail je récupére toutes les variable sauf la variable demandeur

Je n'ai rien pour cette variable dans le mail que je reçois
ju3979 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/03/2008, 14h10   #4
Modératrice
 
Avatar de Celira
 
Femme
Développeuse PHP/Java
Inscription : avril 2007
Messages : 3 686
Détails du profil
Informations personnelles :
Sexe : Femme
Âge : 27
Localisation : France

Informations professionnelles :
Activité : Développeuse PHP/Java

Informations forums :
Inscription : avril 2007
Messages : 3 686
Points : 5 453
Points : 5 453
essaye d'ajouter des quotes autour de la valeur :
Code html :
<input name="demandeur" value= "<?php echo recup_name($ip); ?>" size="30" type="text">
__________________
Modératrice PHP
Aucun navigateur ne propose d'extension boule-de-cristal : postez votre code et vos messages d'erreurs. (Rappel : "ça ne marche pas" n'est pas un message d'erreur)

Pour afficher votre code en couleurs : [CODE=php][/CODE] (bouton # de l'éditeur)
Celira est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h48.


 
 
 
 
Partenaires

Hébergement Web