formulaire php (j'y pige que dalle)

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : formulaire php (j'y pige que dalle)

par sylvaing26 » 31 oct. 2008, 01:32

Je pense juste que Monsieur numajet espère avoir le code pondu pret à l'emploi !

par charabia » 30 oct. 2008, 17:27

Numajet, développeur ou pas, tout s'apprend. On a tous été débutant à un moment. Si tu t'es lancé dedans, la moindre des choses c'est de faire ce qu'on t'explique et d'essayer de comprendre non ? Si ça te gonfle, n'insiste pas et arrête de programmer.

On te donne des indices, tout ce qu'il faut pour finir ton formulaire en quelques minutes. Tu ne prends pas la peine de lire ce qu'on te dit, comment espères-tu en finir avec ça ?

Berzemus t'as expliqué pourquoi ta fonction mail ne marchait pas, as-tu compris ? Ou espères-tu qu'on le fasse pour toi ? As-tu lu le tuto que je t'ai donné ? (depuis X fois)

En passant, merci Berzemus ;) Je n'attend que ça que de devenir maître zen, je m'entraîne à fond la caisse ! :langue:

par numajet » 30 oct. 2008, 17:15

bonjour berzemus,

Je ne suis pas un développeur, j'y pige que dalle, j'ai juste besoin d'un formulaire qui me renvoie les infos
c'est tout. Ca ne m'amuse pas de galérer. Maintenant comme toi c'est ton métier pouvons nous en finir avec ce formulaire qui me gonfle plutot q'autre chose.
Merci

par Berzemus » 30 oct. 2008, 17:02

Mon cher Charabia, soit tu es un maître zen, soit tu le deviendra sous peu. C'est beau, cette patience, je suis ému..

Alors

/* prends son gros marteau à faire entrer des choses dans d'autres */

namujet !!

La documentation de la fonction mail, ainsi que le lien que t'as généreusement donné Charabia en plus d'avoir insisté à plusieurs reprises de le lire, ce qui apparemment t'est extrêmement difficile, t'indiquent tout deux que:

La fonction mail s'utilise principalement avec 3 paramètres:
mail('email_destinataire',  'sujet',  'message'); 
Maintenant, explique-nous en détails ce qui te permet de penser que ceci:
mail("[email protected]",$prenom,$nom,$commentaire,$telephone,$email);
ait une quelconque chance, un jour, d'aboutir au résultat espéré ?

Si tu n'y arrives pas, dis-toi que c'est pas grave, mais que la programmation n'est peut-être pas fait pour toi.

Sinon, les autres problèmes sont liés à des parenthèses ouvertes qui ne sont pas fermés, et des "else" qui se suivent sans raison aucune.

par Invité » 30 oct. 2008, 16:42

je suis completement perdu
<?php 
// Récupération des données transmises par POST
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$commentaire = $_POST['commentaire'];
$telephone = $_POST['telephone'];
$email = $_POST['email'];

if($nom ==""){ 
    // On verifie le nom 
    echo("Le champ Nom est vide !"); 
  }
  elseif($prenom ==""){ 
      // On verifie le message 
      echo("Le champ prenom est vide !"); 
    }  
	   // On verifie le message 
	elseif($commentaire ==""){ 
      echo("Le champ commentaire est vide !"); 
    }
	   // On verifie le sujet  
    elseif($telephone ==""){ 
        echo("Le champ telephone est vide !"); 
      } 
	elseif($email==""){ 
    // On verifie l'email  
    echo("Le champ email est vide !");  
} 
else {
    mail("[email protected]",$prenom,$nom,$commentaire,$telephone,$email);
    echo("Votre message a bien été envoyé");  
}
 
// j'ai mis "email"??
	$headers ='From: "nom"<"email">'."\n";
	
	// "[email protected]" on remplace par quoi??
     $headers .='Reply-To: [email protected]'."\n";
     $headers .='Content-Type: text/html; charset="iso-8859-1"'."\n";
     $headers .='Content-Transfer-Encoding: 8bit';

     $message ='<html><head><title>Un titre ici</title></head><body>Un message de test</body></html>'; 

if(mail("[email protected]", 'Sujet', $prenom,$nom,$commentaire,$telephone,$email))
     {
          echo ("Le message a été envoyé");
     }
     else
     {
          echo ("Le message n\'a pu être envoyé");
     } 
?> 

par charabia » 30 oct. 2008, 15:49

Tu me dis oui alors que je retrouve les mêmes erreurs...y a du laisser aller là tu ne penses pas ?

Tu ne prends même pas la peine de répercuter mes corrections, ça craint pour ton matricule soldat !

par numajet » 30 oct. 2008, 15:46

oui, il ne fallait pas changer la dernière condition apparement

par charabia » 30 oct. 2008, 15:42

Dites m'sieur numajet, lisez-vous mes réponses...?

par numajet » 30 oct. 2008, 15:37

je crois qu'il y un probleme sur ma fonction mail

<?php
// Récupération des données transmises par POST
$nom = $_POST['nom'];
$prenom = $_POST['prenom'];
$commentaire = $_POST['commentaire'];
$telephone = $_POST['telephone'];
$email = $_POST['email'];

if($nom ==""){
// On verifie le nom
echo("Le champ Nom est vide !");
}
elseif($prenom ==""){
// On verifie le message
echo("Le champ prenom est vide !");
}
// On verifie le message
elseif($commentaire ==""){
echo("Le champ commentaire est vide !");
}
// On verifie le sujet
elseif($telephone ==""){
echo("Le champ telephone est vide !");
}
// On verifie l'email
else {
($email=="")
echo("Le champ email est vide !");
}

if(mail("[email protected]",$prenom,$nom,$commentaire,$telephone,$email)){
echo ("Le message a été envoyé");
}
else{
echo ("Le message n\'a pu être envoyé");
}
?>

par charabia » 30 oct. 2008, 15:03

Exact, je n'avais pas regardé ta fonction mail. Je t'invite donc maintenant que les conditions sont ok, d'étudier la fonction mail : http://www.vulgarisation-informatique.com/mail.php

par numajet » 30 oct. 2008, 15:00

il y a un message d'erreur.
Warning: mail() expects at most 5 parameters, 6 given in C:\Program Files\EasyPHP 2.0b1\www\traitement.php on line 31
Votre message a bien été envoyé

par charabia » 30 oct. 2008, 14:50

<?php  
// Récupération des données transmises par POST 
$nom = $_POST['nom']; 
$prenom = $_POST['prenom']; 
$commentaire = $_POST['commentaire']; 
$telephone = $_POST['telephone']; 
$email = $_POST['email']; 

if($nom ==""){  
    // On verifie le nom  
    echo("Le champ Nom est vide !");  
  } 
  elseif($prenom ==""){  
      // On verifie le message  
      echo("Le champ prenom est vide !");  
    }   
       // On verifie le message  
    elseif($commentaire ==""){  
      echo("Le champ commentaire est vide !");  
    } 
       // On verifie le sujet   
    elseif($telephone ==""){  
        echo("Le champ telephone est vide !");  
      }  
      else($email ==""){ 
        // On verifie l'email  
          echo("Le champ email est vide !");  
        } 
         
        else mail("[email protected]",$prenom,$nom,$commentaire,$telephone,$email){  
          echo("Votre message a bien été envoyé");  
        } 
?>
Pourquoi as-tu 2 else ? Et après un else, plus besoin de mettre de condition puisque c'est celle qui sera prise en dernier cas.

Donc la syntaxe est
...
...
elseif($email==""){ 
	// On verifie l'email  
	echo("Le champ email est vide !");  
} 
else {
	mail("[email protected]",$prenom,$nom,$commentaire,$telephone,$email);
	echo("Votre message a bien été envoyé");  
} 

par numajet » 30 oct. 2008, 14:35

toujour une erreur en ligne 9
(Parse error: syntax error, unexpected '{' in C:\Program Files\EasyPHP 2.0b1\www\dossier sans titre\traitement.php on line 9)

par sylvaing26 » 30 oct. 2008, 14:22

<?php  
// Récupération des données transmises par POST 
$nom = $_POST['nom']; 
$prenom = $_POST['prenom']; 
$commentaire = $_POST['commentaire']; 
$telephone = $_POST['telephone']; 
$email = $_POST['email']; 
if(!isset($nom) || (!isset($prenom) || (!isset($commentaire) || (!isset($telephone) || (!isset($email))
  if($nom ==""){  
    // On verifie le nom  
    echo("Le champ Nom est vide !");  
  } 
  if($prenom ==""){  
      // On verifie le message  
      echo("Le champ prenom est vide !");  
    }   
       // On verifie le message  
   if($commentaire ==""){  
      echo("Le champ commentaire est vide !");  
    } 
       // On verifie le sujet   
   if($telephone ==""){  
        echo("Le champ telephone est vide !");  
      }  
   if($email ==""){ 
        // On verifie l'email  
          echo("Le champ email est vide !");  
        } 
         

else mail("[email protected]",$prenom,$nom,$commentaire,$telephone,$email){  
echo("Votre message a bien été envoyé");  
        } 
?> 
et comme ca ?

par numajet » 30 oct. 2008, 14:13

il renvoie un message d'erreur
(Parse error: syntax error, unexpected '{' in C:\Program Files\EasyPHP 2.0b1\www\dossier sans titre\traitement.php on line 8)