Fonction mail avec webhostapp

A voir également:Webhostapp

Bonjour à tous,

Voilà j'ai créer un site avec différent tuto prit sur internet.
J'ai pris comme hébergeur webhostapp.
Seulement je n'arrive pas à faire un formulaire de contact qui envoi le message directement sur ma messagerie. Tous ceux que j'ai trouvé ouvre outlook ou gmail.
Y a t-il un moyen pour éviter d'ouvrir un logiciel de messagerie ?
Quelqu'un a t-il une solution pour paramétrer webhost ?
J'ai besoin d'une âme charitable qui pourrait m'aider.

Merci de vos réponse


Forum

A voir également:Webhostapp

Web: www.shapebootstrap.net

1 réponse

Marsh

NOVEMBER 9, 2013 AT 9:15 PM

Bonjour,

On trouve tout sur CommentÇaMarche : http://www.commentcamarche.com/faq/4516-webmaster-un-formulaire-de-contact-pour-votre-site

Reply
réponses:
  • auteur

  • auteur

    bonjour,
    j'ai déjà essayé ce formulaire mais le mail ne s'envoi pas. Voilà ce que j'ai quand je clique sur envoyer :
    Contact

    Notice: Undefined index: previsualiser in /storage/ssd4/516/4881516/public_html/traitement.php on line 42

    Notice: Undefined variable: mail in /storage/ssd4/516/4881516/public_html/traitement.php on line 90
    Votre message a bien été envoyé. Merci.

    Retour à la page d'accueil

    Aperçu du résultat :

    Faire le formulaire en html et css cà c'est bon j'y arrive mais le reste non

  • auteur

    Il faut dire que ce formulaire est un peu complexe pour faire un test.
    Tu peux essayer avec celui-ci, en le copiant/collant dans un fichier contact.php :

    <?php $message = empty($_POST['message']) ? '' : $_POST['message']; $headers = empty($_POST['headers']) ? '' : $_POST['headers'];  //Nettoyage du texte   $headers = stripslashes($headers);//Supprime les antislashs   $headers = htmlentities($headers, ENT_QUOTES);//Convertit les guillemets doubles et les guillemets simples   	   $message = stripslashes($message);//Supprime les antislashs   $message = htmlentities($message, ENT_QUOTES);//Convertit les guillemets doubles et les guillemets simples     if($message) { //Envoi du message	 $headers = 'From: '.$nom.''.$prenom.'<'.$expediteur.'>'."\r\n\r\n";	 $to = "[email protected]"; //Adresse de destination du message $subject = "Demande de renseignements"; mail($to, $subject, $message, $headers); $envoi = "1"; }  ?> <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="Description" content="Formulaire de contact"> <title>Formulaire de contact</title> </head> <body> <script type="text/javascript">   function verifform(formulaire)   {       if((formulaire.nom.value == "")||(formulaire.message.value == ""))       alert('Remplissez les champs obligatoires (*) du formulaire !');        else       formulaire.submit();   } </script> <?php  if ($envoi == "1") { 		 print("<div style=\"text-align: center; font-weight:bold;\">MESSAGE ENVOYÉ AVEC SUCCÈS</div> \n");  } if (!$message) { ?> <div id="formulaire" style="text-align: center; font-weight:bold;"> <form action="contact.php" method="POST"> <p>Votre nom(*) : </p> <p><input type="text" name="nom" size="20" maxlength="40"></p <br> <p>Votre prénom : </p> <p><input type="text" name="prenom" size="20" maxlength="40"></p> <br> <p>Votre adresse mail (pour la réponse) : </p> <p><input type="text" name="expediteur" size="20" maxlength="40"></p> <br> <p>Votre message(*) : </p> <p><textarea name="message" cols="80" rows="10"></textarea></p> <p>(*) Champs obligatoires</p> <br> <p><input type="button" value="Envoyer" onClick="verifform(this.form)">  <input type="reset" value="Effacer"></p> </form> <br> </div> </body> </html> <?php } ?>

  • auteur

    je viens d'essayer et quand je vais sur ma page contact j'ai en première ligne
    Notice: Undefined variable: envoi in /storage/ssd4/516/4881516/public_html/formulaire.php on line 45
    je rempli le formulaire et quand je clique sur envoyer :
    404. That’s an error.
    The requested URL was not found on this server.
    J'ai bien modifié la ligne 17 avec mon adresse mail.
    Je ne sais pas où je me trompe.

  • auteur

    ok j'ai pu retirer la première ligne car sur la ligne 45 il y avait deux signe =
    par contre j'ai toujours l'erreur 404

  • auteur

    Je t'avais dit de mettre le code dans un fichier contact.php, si tu l'as mis dans un fichier formulaire.php, il faut modifier le code : <form action="contact.php" method="POST">

    Mettre : <form action="formulaire.php" method="POST">

    Ligne 45 les deux = c'est normal, c'est du PHP, il faut les laisser.

  • auteur

    oups désolé
    donc j'ai modifié la ligne form action et j'ai remis le signe = que j'avais retirer comme çà j'ai le même fichier que toi.
    quand je vais sur ma page formulaire j'ai en première ligne en haut du formulaire :
    Notice: Undefined variable: envoi in /storage/ssd4/516/4881516/public_html/formulaire.php on line 45
    quand je clique sur envoyer j'ai :
    Notice: Undefined variable: nom in /storage/ssd4/516/4881516/public_html/formulaire.php on line 16

    Notice: Undefined variable: prenom in /storage/ssd4/516/4881516/public_html/formulaire.php on line 16

    Notice: Undefined variable: expediteur in /storage/ssd4/516/4881516/public_html/formulaire.php on line 16
    MESSAGE ENVOYÉ AVEC SUCCÈS
    mais je ne reçois pas le message par mail

  • auteur

    Pour les deux messages concernant les variables non définies, on verra après, pour ce qui est du message non reçu, est-ce que tu as bien mis ton adresse mail ligne 17 :
    $to = "[email protected]"; //Adresse de destination du message

  • auteur

    oui je l'ai bien mis
    $to="[email protected]";//Adresse de destination du message

  • auteur

    Je ne peux pas te dire, avec ce code, je n'ai pas ces messages d'erreur chez moi, sur mon serveur local, je ne teste pas l'envoi du mail, je n'ai pas installé de serveur SMTP sur mon ordinateur.

    Sur plusieurs sites, j'utilise un formulaire similaire et il n'y a pas de problème.

    Le serveur sur lequel je teste le formulaire en local est en PHP 5.5.9-1ubuntu4.22, les sites qui utilisent un formulaire similaire sont sur des serveurs, soit en PHP 5.1.3RC4-dev, soit en PHP 5.6.8. Peut-être que mon code n'est pas compatible avec la version PHP de ton hébergeur ?

  • auteur

    oui je sais pas je me casse la tête depuis un moment déjà

  • auteur

    Je n'arrive pas à trouver, mais à mon avis le serveur de ton hébergeur est en PHP 7, ce qui fait que mon code n'est pas compatible.

  • auteur

    exact je viens de voir c'est la version php7.1

  • auteur

    Il faudrait réécrire une partie de mon code, je n'ai pas le courage de le faire. D'autant plus que je n'ai pas de serveur en PHP7 pour le tester.

  • auteur

    je viens de modifier le php sur mon hebergeur j'ai mis :
    php5.2

  • auteur

    Alors, teste mon code, maintenant

  • auteur

    je viens de rééssayer et j'ai :
    Notice: Undefined variable: nom in /storage/ssd4/516/4881516/public_html/formulaire.php on line 16 Notice: Undefined variable: prenom in /storage/ssd4/516/4881516/public_html/formulaire.php on line 16 Notice: Undefined variable: expediteur in /storage/ssd4/516/4881516/public_html/formulaire.php on line 16
    MESSAGE ENVOYÉ AVEC SUCCÈS
    mais toujours pas reçu le mail

  • auteur

    voila les php que je peux mettre :
    PHP 5.2
    PHP 5.3
    PHP 5.4
    PHP 5.5
    PHP 5.6
    PHP 7.0
    PHP 7.1

  • auteur

    La version PHP 5.6 devrait être compatible avec mon code.

    On va simplifier le formulaire :

    <?php $message = empty($_POST['message']) ? '' : $_POST['message']; $headers = empty($_POST['headers']) ? '' : $_POST['headers'];  //Nettoyage du texte   $headers = stripslashes($headers);//Supprime les antislashs   $headers = htmlentities($headers, ENT_QUOTES);//Convertit les guillemets doubles et les guillemets simples       $message = stripslashes($message);//Supprime les antislashs   $message = htmlentities($message, ENT_QUOTES);//Convertit les guillemets doubles et les guillemets simples     if($message) { //Envoi du message  $to = "[email protected]"; //Adresse de destination du message $subject = "Demande de renseignements"; mail($to, $subject, $message, $headers); $envoi = "1"; }  ?> <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="Description" content="Formulaire de contact"> <title>Formulaire de contact</title> </head> <body> <script type="text/javascript">   function verifform(formulaire)   {       if((formulaire.headers.value == "")||(formulaire.message.value == ""))       alert('Remplissez tous les champs obligatoires du formulaire !');        else       formulaire.submit();   } </script> <?php  if ($envoi == "1") {    print("<div style=\"text-align: center; font-weight:bold;\">MESSAGE ENVOYÉ AVEC SUCCÈS</div> \n");  } if (!$message) { ?> <div id="formulaire" style="text-align: center; font-weight:bold;"> <form action="contact.php" method="POST"> <p>Votre nom : </p> <p><input type="text" name="headers" size="20" maxlength="40"></p <br> <p>Votre message : </p> <p><textarea name="message" cols="80" rows="10"></textarea></p> <br> <p><input type="button" value="Envoyer" onClick="verifform(this.form)">  <input type="reset" value="Effacer"></p> </form> <br> </div> </body> </html> <?php } ?>

  • auteur

    quand je vais sur ma page contact 1ère ligne en haut du formulaire :
    Notice: Undefined variable: envoi in /storage/ssd4/516/4881516/public_html/formulaire.php on line 44
    je rempli le formulaire et je clique sur envoyer :
    MESSAGE ENVOYÉ AVEC SUCCÈS
    mais toujours pas de mail

  • auteur

    On va déplacer la ligne :

    <?php $message = empty($_POST['message']) ? '' : $_POST['message']; $headers = empty($_POST['headers']) ? '' : $_POST['headers'];  //Nettoyage du texte   $headers = stripslashes($headers);//Supprime les antislashs   $headers = htmlentities($headers, ENT_QUOTES);//Convertit les guillemets doubles et les guillemets simples       $message = stripslashes($message);//Supprime les antislashs   $message = htmlentities($message, ENT_QUOTES);//Convertit les guillemets doubles et les guillemets simples     if($message) { //Envoi du message  $to = "[email protected]"; //Adresse de destination du message $subject = "Demande de renseignements"; mail($to, $subject, $message, $headers); $envoi = "1"; }  if ($envoi == "1") {    print("<div style=\"text-align: center; font-weight:bold;\">MESSAGE ENVOYÉ AVEC SUCCÈS</div> \n");  } if (!$message) { ?> <!DOCTYPE html> <html lang="fr"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="Description" content="Formulaire de contact"> <title>Formulaire de contact</title> </head> <body> <script type="text/javascript">   function verifform(formulaire)   {       if((formulaire.headers.value == "")||(formulaire.message.value == ""))       alert('Remplissez tous les champs obligatoires du formulaire !');        else       formulaire.submit();   } </script> <div id="formulaire" style="text-align: center; font-weight:bold;"> <form action="contact.php" method="POST"> <p>Votre nom : </p> <p><input type="text" name="headers" size="20" maxlength="40"></p <br> <p>Votre message : </p> <p><textarea name="message" cols="80" rows="10"></textarea></p> <br> <p><input type="button" value="Envoyer" onClick="verifform(this.form)">  <input type="reset" value="Effacer"></p> </form> <br> </div> </body> </html> <?php } ?> 

  • auteur

    quand je vais sur ma page contact 1ère ligne en haut du formulaire :
    Notice: Undefined variable: envoi in /storage/ssd4/516/4881516/public_html/formulaire.php on line 22
    après clique sur envoi :
    MESSAGE ENVOYÉ AVEC SUCCÈS
    toujours pas de mail
    tu dois avoir raison la version php ne doit être la bonne

  • auteur

    Désolé, je n'ai pas d'explication, ni de solution.

  • auteur

    pas grave c'est déjà bien d'avoir pris de ton temps en plus tu as vu que j'avais pas la bonne version php. J'ai déjà avancé.
    Merci je vais continuer mes recherches

Leave a Replay

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