Je cherche mais je ne trouve pas...

Je cherche mais je ne trouve pas... - PHP - Programmation

Marsh Posté le 06-01-2005 à 22:50:48    

Bonjour à tous et bonne année  :hello:  
Bon voila je vous explique mon petit problème.
J'ai un script php (formail.php) pour envoyer des messages via un formulaire sur un site internet.
Bon le truc c'est que le script fonctionne parfaitement MAIS je pense qu'il y a un truc qu'on peut améliorer.
En effet, a chaque formulaire je recois ca...
 

Citation :

prenom: Yogi
nom: bear
question: test 6
mail: gnagnagna@wanadoo.fr
Submit: Envoyer
errorpage: ../contact.htm
successpage: ../index.html
formsubject: Je sais pas on verra bien


 
or j'aimerai que l'on supprime  
 

Citation :

Submit: Envoyer
errorpage: ../contact.htm
successpage: ../index.html
formsubject: Je sais pas on verra bien


 
perso je m'en fout de ces informations là.
 
Alors je me permet de vous donner mon code pour ce formulaire pour que vous me disiez où je me suis planté... avec en gras ce que je pense être le plus important.
 

Citation :

<form name="Contact" method="post" action=/auto_install/formmail.php>
 
<fieldset style="border-bottom-color:#D77BD7; border-left-color:#D77BD7; border-right-color:#D77BD7; border-top-color:#D77BD7; padding-left : 10px"><legend align=left style="color: #D77BD7; font-size: 14px; font: "Century Gothic""><strong> Formulaire de Contact</strong></legend>
     
<div align="center">
<p align="left"><span class="Style9">Pr&eacute;nom :</span>                      <input name="prenom" type="text" id="prenom" style="font-size: 12px; color : #990000" title="Prénom"></p>
<p align="left"><span class="Style9">Nom :</span>                        <input name="nom" type="text" id="nom" style="font-size: 12px; color : #990000" title="Nom"></p>
<p align="left"><span class="Style9">Question :</span>                        <textarea name="question" cols="25" rows="4" id="question" title="Votre question" style=" font-size: 12px; color : #990000; scrollbar-base-color : #D77BD7"></textarea></p>
<p align="left"><span class="Style9">Adresse courriel :</span> <input name="mail" type="text" id="mail" style="font-size: 12px; color : #990000" title="Adresse de courriel"></p>
 
<p align="center">
<input type="submit" name="Submit" style="background-color: #D77BD7; color : #990000; font-size : 10px" value="Envoyer">
<input type="reset" name="Submit" style="background-color: #D77BD7; color : #990000; font-size : 10px" value="R&eacute;initialiser">                
<input type="hidden" name="errorpage" value="../contact.htm">
<input type="hidden" name="successpage" value="../index.html">
<input type="hidden" name="formsubject" value="Je sais pas on verra bien">


 
Merci de votre aide... car j'ai ce script sur 3 sites différents et ca fait 6 mois que je cherche la solution...  :jap:  
       


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 06-01-2005 à 22:50:48   

Reply

Marsh Posté le 06-01-2005 à 22:53:13    

Ben vire les 3 <input type="hidden"....

Reply

Marsh Posté le 06-01-2005 à 22:57:00    

Modifie le fichier formail.php pour qu'il envoit pas les infos que tu veux pas avoir  :sarcastic:


Message édité par naceroth le 06-01-2005 à 22:57:14
Reply

Marsh Posté le 06-01-2005 à 23:02:04    

je peux pas virer les 3 <input type="hidden"... car ils servent à rediriger vers les différentes pages...
pour la modif du formail.php... c'est pas con ce que tu dis là ;)
 
Je vais essayer ca de suite.. en espérant ne pas effacer des trucs importants :/


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 06-01-2005 à 23:03:34    

... Ben c'est eux qui t'envoient les trucs que tu veux pas... Donc si tu les veux pas, faut les supprimer. Maintenant s'ils servent à autre chose, ben tu peux rien faire :(

Reply

Marsh Posté le 06-01-2005 à 23:14:07    

FlorentG a écrit :

... Ben c'est eux qui t'envoient les trucs que tu veux pas... Donc si tu les veux pas, faut les supprimer. Maintenant s'ils servent à autre chose, ben tu peux rien faire :(


 
Tu peux les supprimer de la commande mail() hein, ils s'y casent pas tout seul...


Message édité par naceroth le 06-01-2005 à 23:14:22
Reply

Marsh Posté le 06-01-2005 à 23:16:46    

naceroth a écrit :

Modifie le fichier formail.php pour qu'il envoit pas les infos que tu veux pas avoir  :sarcastic:


 
donc si je ne me trompe pas je vire ce qui est en gras...
 
 

Citation :

<?php
 
if (count($_POST)) {
   // Check the Referrer...
 
   if (!stristr($_SERVER[HTTP_REFERER],'lezoo.fr')) {
      echo "Referer mismatch.";
      exit;
   }
 
   // Check required variables...
 
   if ($_POST[required]) {
      foreach(explode(",",$_POST[required]) as $req) {
         if (!isset($_POST[$req]) || $_POST[$req] == '') {
     if (isset($_POST[errorpage]) && $_POST[errorpage] != '') {
        header("Location: $_POST[errorpage]" );
        exit;
     }
     elseif (isset($_POST[errorcgi]) && $_POST[errorcgi] != '') {
        header("Location: $_POST[errorcgi]?error=$req" );
        exit;
     }
     else {
               echo "Error, missing data: $req";
        exit;
     }
         }
      }
   }
 
   // Send the email
 
   $data = "Vive moi :\n----------------------------------------------------\n\n";
 
   foreach ($_POST as $key => $var) {
      $data .= "$key: $var\n";
   }
 
   $subject = ($_POST[formsubject]) ? $_POST[formsubject] : 'Form mail submission';
 
   mail('gnagnagna@wanadoo.fr',$subject,$data);
 
   if ($_POST[successpage] && $_POST[successpage] != '') {
       header("Location: $_POST[successpage]" );
       exit;
   }
   else {
       echo "Your information has been sent successfully";
   }
 
}
else {
   if ($_POST[errorpage]) {
      header("Location: $_POST[errorpage]" );
      exit;
   }
   elseif ($_POST[errorcgi]) {
      header("Location: $_POST[errorcgi]" );
      exit;
   }
   else {
     echo "Error, missing data: $req";
     exit;
   }
}
?>


 
j'ai bon, non ?


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 06-01-2005 à 23:28:54    

Non, t'as pas bon, c'est cette partie là qui est à modifier

Code :
  1. $data = "Vive moi :\n----------------------------------------------------\n\n";
  2. foreach ($_POST as $key => $var) {
  3.       $data .= "$key: $var\n";
  4.    }
  5. $subject = ($_POST[formsubject]) ? $_POST[formsubject] : 'Form mail submission';
  6. mail('gnagnagna@wanadoo.fr',$subject,$data);


 
Là, il parcourt tout le tableau POST et crée le mail en conséquence, toi tu veux personnaliser le contenu, donc tu dois modifier la variable $data en mettant ce que tu veux à l'intérieur.
 
PS : déjà fait du php avant de venir nous voir ? :)

Reply

Marsh Posté le 06-01-2005 à 23:57:04    

non... jamais... LOL :D
 
donc c'est vrai que c'est un peu compliqué pour moi... le html  : ok mais le php, je commence seulement.
 
donc je dois me retrouver avec un truc du type  
 

Citation :

# foreach ($_POST as $key => $var) {
#       $data .= "$key: $_POST\n";
#    }


 
ou quelque chose comme ca,non ?


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 07-01-2005 à 00:05:09    

Si tu commentes la boucle sans rien ajouter d'autre, ton message va être vachement limité :D
 
Faut avoir un truc du style

Code :
  1. $data .= "Prénom : ".$_POST['prenom'];


pour les champs que tu veux voir

Reply

Marsh Posté le 07-01-2005 à 00:05:09   

Reply

Marsh Posté le 07-01-2005 à 00:13:59    

ok... mais c'est marrant de commenter la boucle sans rien dedans... ca sert a rien sauf a ce que je comprenne... ;)
donc on résume

Citation :

$data .= "Prenom : ".$_POST['prenom']; "Nom : ".$_POST['nom'];  "Question : ".$_POST['question']; "Adresse Courriel : ".$_POST['mail']; }


 
c'est ca j'ai bon chef ????      


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 07-01-2005 à 00:18:27    

Code :
  1. $data .= "Prenom : ".$_POST['prenom']."Nom : ".$_POST['nom'].  "Question : ".$_POST['question']."Adresse Courriel : ".$_POST['mail'];

Reply

Marsh Posté le 07-01-2005 à 00:23:37    

ok... j'avais quasiment pas tellement faux... juste des ; au lieu de . et } en trop..
merci encore de ton aide.
au moins j'aurais compris un peu du php ce soir...
je vais m'endormir moins bete. ;)


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 07-01-2005 à 00:31:15    

donc voila ce que cela donne

Citation :

$data = "Le ZOO Bar - Deauville:\n----------------------------------------------------\n\n";
 
      $data .= "Prenom : ".$_POST['prenom']. "Nom : ".$_POST['nom']. "Question : ".$_POST['question']. "Adresse Courriel : ".$_POST['mail'];
 
 
   $subject = ($_POST[formsubject]) ? $_POST[formsubject] : 'Form mail submission';


 
par contre le mail arrive comme ca.

Citation :

Prenom : TigerNom : WOODSQuestion : test9Adresse Courriel : tiger_woods@wanadoo.fr


 
y'a-t-il un moyen de mettre cela sur plusieurs lignes ?


Message édité par Prozac-14 le 07-01-2005 à 00:32:00

---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 07-01-2005 à 00:49:44    

tu rajoute des \n
 

Code :
  1. data .= "Prenom : ".$_POST['prenom']."\nNom : ".$_POST['nom']. "<BR>\nQuestion : ".$_POST['question']. "\nAdresse Courriel : ".$_POST['mail'];

Reply

Marsh Posté le 07-01-2005 à 00:49:47    

Citation :

y'a-t-il un moyen de mettre cela sur plusieurs lignes ?


 
dans ta chaine $data, tu rajoute des "/n" là où tu veux que des retour chariot soient inséré à l'arrivée...
attention, les /n entre double quote pour apache les analyse, sinon ça marche pô
 
EDIT: GRILLED, pas de bcp


Message édité par Xav_ le 07-01-2005 à 14:46:01

---------------
- Xav - ...There are no crimes when there are no laws... -- Xav's World
Reply

Marsh Posté le 07-01-2005 à 05:01:27    

hé bien merci beaucoup.
et le pire c'est que je le savais (si si je vous jure).
 
allez. A plus. ;)


---------------
Je suis capable du meilleur comme du pire, mais c'est dans le pire que je suis le meilleur.
Reply

Marsh Posté le 07-01-2005 à 08:09:27    

naceroth a écrit :

Tu peux les supprimer de la commande mail() hein, ils s'y casent pas tout seul...


 
Ah ok :D J'avais mal compris le truc alors :(

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed