IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[PHP-JS] probleme avec mon formulaire contact


Sujet :

Langage PHP

  1. #21
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    ben le select ne commence pas a 0 mais a 1 donc il n'indique pas de mettre une adresse mail .
    en gros le print ne sert a rien si je le laisse ainsi lol
    mais le script bloque toujours ici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (empty($vNom) || empty($Message) || empty($Email)) {
    		echo "<p class='red'>Vous n'avez pas compl&egrave;t&eacute; toutes les zones&nbsp;:</p>";
    		$erreur=1;
    	}
    et ne fais donc pas ce test :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-_.]?[0-9a-z])*\\.[a-z]{2,4}$",$vEmail) && ($erreur<>1)){
    		echo "<p class='red'>L'adresse e-mail n'est pas correcte&nbsp;:</p>";
    		$erreur=1;
    	}
    ce qu'il empeche de terminer le script avec ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    if ($erreur==1) {
    		formulaire($Nom,$Profession,$Email,$Message);
    	}
    	else {
    		mail($destinataire,$titre,$message,"From: $vEmail") ;
    		echo "<p class='vi4'>Votre message :</p>";
    		echo "<ul><li>Nom : <span class='red'>" . $vNom . "</span><br />";
    		echo "<li>Profession : <span class='red'>" . $vProfession. "</span></li>";
    		echo "<li>E-mail : <span class='red'>" . $vEmail. "</span></li>";
    		echo "<li>Message : <span class='red'>" . $vMessage.'</span></li></ul>';
    		echo "<p class='vi4'>a bien t envoy au webmestre du site. Nous vous remercions.</p>\n" ;
    		echo "<form name='boutons'><table border='0' cellspacing='0' cellpadding='0' width='200px' align='left'><tr><td><center>" ;
    	}
    }
    ?>
    	</td>
      </tr>
    </table>
    </form>

  2. #22
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Erreur de syntaxe (plutot d'inattention) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (empty($vNom) || empty($vMessage) || empty($vEmail)) {
    Meme chose ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    formulaire($vNom,$vProfession,$vEmail,$vMessage);

  3. #23
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    je viens de l'envoyer modifier sur le serveur , il garde bien ce que l'ont a indiquer dans les champs sauf pour le texte area .
    j'ai toujours le message de remplir tous les champs lol sa doit venir de ce texte area ????
    http://www.f2c.fr/contact.php
    ps: ne faites pas attention au reste du site , il est en construction

    je vous remets le code complet avec les changements
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    <?php
    function formulaire($Nom="",$Profession="",$Email="",$Message="") {
    ?>
    <form action="<?php echo $PHP_SELF ?>" method="post" style="margin:0; padding:0 ">
    <table width="519" style="height:117px " border="0" cellspacing="0" cellpadding="0">
      <tr>
        <td width="85" valign="top" style="padding-top:3px ">
    <div align="right" style="margin-right:7px ">
    Votre nom:<br>
    <br>
    votre Profession:<br>
    <br>
    Votre E-mail:<br><br>
    Vous contacter:<br>
    </div>
    	</td>
        <td width="174" valign="top">
    <input type="text" name="Nom" class="form" value="<?php echo trim(htmlentities($Nom)) ?>" /><br>
    <br style="line-height:13px ">
    <input type="text" class="form" name="Profession" value="<?php echo trim(htmlentities($Profession)) ?>"><br>
    <br style="line-height:13px ">
    <input type="text" class="form" name="Email" value="<?php echo trim(htmlentities($Email)) ?>"><br>
    <br style="line-height:4px ">
    <?php se_connecter();
        $destinataire = '<select name="contact">';
    	$req = mysql_query('select nom, id_email from contact');
    	while($res = mysql_fetch_assoc($req))
        $destinataire .= '<option value="'.$res['id_email'].'">'.$res['nom'].'</option>';
    	$destinataire .= '</select>';
    	echo $destinataire;
    	?><br />
    	</td>
        <td width="121" valign="top" style="padding-top:3px ">
    	<div style="margin-right:7px " align="right">
    	Comments & questions:
    	</div>
    	</td>
        <td width="139" valign="top">
    <textarea class="textarea" cols="5" rows="5"><?php if (ereg("[]%~#`$&|}{^[><]",$Message)) { 
    	echo "Certains caractres utiliss sont interdits";
      	$erreur=1;
     }
      else {
      	echo trim($Message); 
      } ?>
      </textarea><br>
    <br style="line-height:9px "> 
    <div align="right"><input name="" type="image" src="images/reset.jpg" title="Reset">
    <input name="Submit" value="Envoi" alt="Envoi" type="image" src="images/submit_b.jpg" title="Envoi de votre message" style="margin-left:43px; margin-right:5px ">
    </div>        
    <?php
    }
    if(!isset($_POST['Nom'])) {
            formulaire();
    }
    else {
    	$vNom=trim(htmlentities($_POST["Nom"]));
    	$vProfession=trim(htmlentities($_POST["Profession"]));
    	$vMessage=trim($_POST["Message"]);
    	$vEmail=trim(htmlentities($_POST["Email"]));
    	$destinataire_id=intval($_POST['contact']);
    	//Maintenant on recherche l'email dans la base de fonction de l'id transmis
    	$requete = 'select email_mod from contact where id_email=' .$destinataire_id;
    	$res = mysql_query($requete) or die('erreur mysql a la ligne :'.__LINE__);
    	if (mysql_num_rows($res) > 0 ) {//email trouv
       $result = mysql_fetch_array($res);
    	$destinataire= $result['email_mod'];
    	}
    	else {
    	//Erreur pas d'email slectionne
    	print 'Vous n\'avez pas selectionner de contact'; 
    	} 
    	$titre="Contact";
    	$message="Provenance : $HTTP_REFERER\n";//affiche la provenence dans le message reus
    	$message.="Adresse IP : $REMOTE_ADDR,\n";//affiche l'ip dans le message reus
    	$message.="Navigateur : $HTTP_USER_AGENT\n";//affiche le navigateur utiliser par le client dans le message reus
    	$message.="Nom : $vNom\n";//affiche le nom 
    	$message.="Profession : $vProfession\n";//affiche la profession
    	$message.="E-mail : $vEmail\n";//affiche le mail
    	$message.="Message : $vMessage\n";//affiche le message
    	if (empty($vNom) || empty($vMessage) || empty($vEmail)) {
    		echo "<p class='red'>Vous n'avez pas compl&egrave;t&eacute; toutes les zones&nbsp;:</p>";
    		$erreur=1;
    	}
    	if (!eregi("^[0-9a-z]([-_.]?[0-9a-z])*@[0-9a-z]([-_.]?[0-9a-z])*\\.[a-z]{2,4}$",$vEmail) && ($erreur<>1)){
    		echo "<p class='red'>L'adresse e-mail n'est pas correcte&nbsp;:</p>";
    		$erreur=1;
    	}
    	if ($erreur==1) {
    		formulaire($vNom,$vProfession,$vEmail,$vMessage);
    	}
    	else {
    		mail($destinataire,$titre,$message,"From: $vEmail") ;
    		echo "<p class='vi4'>Votre message :</p>";
    		echo "<ul><li>Nom : <span class='red'>" . $vNom . "</span><br />";
    		echo "<li>Profession : <span class='red'>" . $vProfession. "</span></li>";
    		echo "<li>E-mail : <span class='red'>" . $vEmail. "</span></li>";
    		echo "<li>Message : <span class='red'>" . $vMessage.'</span></li></ul>';
    		echo "<p class='vi4'>a bien t envoy au webmestre du site. Nous vous remercions.</p>\n" ;
    		echo "<form name='boutons'><table border='0' cellspacing='0' cellpadding='0' width='200px' align='left'><tr><td><center>" ;
    	}
    }
    ?>
    	</td>
      </tr>
    </table>
    </form>

  4. #24
    Inactif  
    Avatar de Kerod
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    11 672
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 11 672
    Points : 20 778
    Points
    20 778
    Par défaut
    Ce serait bien qu'il ait un nom :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <textarea class="textarea" cols="5" rows="5">
    Ca devrait marcher après ça

    Moi je vais dormir bonne nuit

  5. #25
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    ahh oui je l'avais dans ma version original et j'ai oublier de renommer area lol :
    j'ai ajouter sa je vais tester :
    name="Message" alt="Message"

  6. #26
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    voila la fonction mail marche tres bien enfin j'ai reçus un email mais je n'ai pas tout a l'interieur.
    il me manque les globals que j'avais instaurer dans $message pour recevoir l'ip , la provenance et le navigateur utiliser
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $titre="Contact";
    	$message="Provenance : $HTTP_REFERER\n";//affiche la provenence dans le message reus
    	$message.="Adresse IP : $REMOTE_ADDR,\n";//affiche l'ip dans le message reus
    	$message.="Navigateur : $HTTP_USER_AGENT\n";//affiche le navigateur utiliser par le client dans le message reus
    	$message.="Nom : $vNom\n";//affiche le nom 
    	$message.="Profession : $vProfession\n";//affiche la profession
    	$message.="E-mail : $vEmail\n";//affiche le mail
    	$message.="Message : $vMessage\n";//affiche le message
    j'ai corriger tout de même des bug d'affichage et surtout j'ai ajouter strippslash a message pour enlever les / lol
    me reste plus que pour recevoir les info de mes super globals et il seras terminé

  7. #27
    Membre habitué Avatar de rougedragon
    Inscrit en
    Septembre 2006
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Septembre 2006
    Messages : 132
    Points : 128
    Points
    128
    Par défaut Le retour de zorro
    j'ai testé ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?php 
    $destinataire = '<select name="contact">';
    	$req = mysql_query('select nom from contact');
    	while($res = mysql_fetch_assoc($req))
        $destinataire .= '<option value="'.$res['id_email'].'">'.$res['nom'].'</option>';
    	$destinataire .= '</select>';
    	print $destinataire;
    ?>
    je n'arrivais pas à récupérer de variable dans mon script de destination:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $dest=$_POST['contact'];
    echo $dest;
    ?>
    et puis j'ai changé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    while($res = mysql_fetch_assoc($req))
    en while($res =
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_fetch_array($req))
    et encore:
    en et j'ai récupérer ma variable.

    A+

  8. #28
    Membre confirmé Avatar de gtraxx
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2006
    Messages
    1 043
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 043
    Points : 570
    Points
    570
    Par défaut
    heureux que ce genre de script te plaise
    pour ce qui est des changements que tu as proposé , on les avais deja effectuer
    il ne reste qu'un seule probleme qui n'en ai pas vraiment un ....
    nous ne recuperons pas les globals que j'ai appliquer dans $message , j'espere recorriger cela tres vite .
    je vais faire une version public de ce script , sur le site
    Si tu as des truc a me proposer pour ce script n'hesite pas

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. probleme gmail et formulaire contact php
    Par eckso7 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 6
    Dernier message: 29/05/2014, 21h47
  2. probleme avec mon formulaire
    Par pitichamo dans le forum Langage
    Réponses: 2
    Dernier message: 21/10/2009, 14h08
  3. Probleme avec mon formulaire
    Par rane dans le forum Servlets/JSP
    Réponses: 7
    Dernier message: 18/05/2009, 19h22
  4. probleme avec mon site php
    Par zoe88 dans le forum Langage
    Réponses: 4
    Dernier message: 06/04/2007, 19h43
  5. php : probleme avec mon formulaire
    Par rane dans le forum Langage
    Réponses: 39
    Dernier message: 29/06/2006, 20h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo