[RESOLU] Php + Bootstrap + Email

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 : [RESOLU] Php + Bootstrap + Email

Re: Php + Bootstrap + Email

par contact12 » 14 juin 2014, 18:16

Merci Elie !
Je te dois beaucoup.

Merci à tous !

Re: Php + Bootstrap + Email

par Elie » 14 juin 2014, 15:16

Tu met ce que tu veux dans action="" ...
Tu peux mettre action="/" Je pense que ca marche

Re: Php + Bootstrap + Email

par contact12 » 14 juin 2014, 15:14

C'est bon cela fonctionne ! Je reçois bien la question et le mail !
MERCI POUR VOTRE AIDE ! :)


Est-il possible d'empêcher que index.php s'affiche une fois que je clique sur Send ?

Re: Php + Bootstrap + Email

par contact12 » 14 juin 2014, 15:00

Merci pour vos retours, j'y suis presque !!

Le message s'envoie bien mais je n'ai toujours pas le contenu de la question et du mail.
Est-il possible également que index.php ne s'affiche pas une fois appuyé sur Send ?

Suite aux conseils d'Elie voici mon code PHP. J'ai intégré le code du fichier email.php dans mon index.php.

xTG, j'ai en effet du code JS. J'ai un bootstrap.css, bootstrap-min.js et jquery-1.10.2.js. Je dois les effacer ?

Merci pour votre aide :)
<form method="post" action="index.php"<span style="font-weight: bold" </span>

     <div style="margin-bottom: 25px" class="input-group">
                                        <span class="input-group-addon"><img src="img/glyphicons_012_heart.png"></span>

                                        <input id="message" type="text" class="form-control" name="message" value="" placeholder="What is your question ?"> 


                                       
                                 </div>
 

                                 <div style="margin-bottom: 25px" class="input-group">
                                        <span class="input-group-addon"><img src="img/glyphicons_290_skull.png"></span></span>
                                        <input id="email" name="email" type="email" class="form-control" placeholder="For the answer, let us your email">                             
                                    </div>



       <!-- Form itself -->
         
                  
        <div class="form-actions">
        <button type="submit" class="btn btn-primary pull-right">Send</button><br />
         
<?php
                        if(!empty($_POST['message'])) {

  $message = $_POST['message'] ;
  $email = $_POST['email'] ;

  // here we use the php mail function
  // to send an email to:
  // [email protected]
  mail( "[email protected]", "Une nouvelle question", $message, "From: $email" );
echo 'Merci pour votre message !';
}

?>
          </form>
    </div>

Re: Php + Bootstrap + Email

par xTG » 14 juin 2014, 14:45

Le enctype="multipart/form-data" ne sert à rien dans ce cas là.
Il sert pour indiquer qu'il y a un champs file à prendre en compte dans la requête HTTP.
Tout champs texte est déjà considéré de base.

Par contre si tu as les arguments qui passent par l'url c'est que tu ne nous as pas montré le bon code (vu qu'il y a method=post).
Ou bien que tu as un script javascript qui stoppe le fonctionnement normal et poste le formulaire à sa sauce.

Re: Php + Bootstrap + Email

par Elie » 14 juin 2014, 14:34

Ton formulaire est déjà en POST donc les valeurs ne devrait pas s'afficher dans l'url, essaye en rajoutant ca.
<form method="post" action="email.php"[b] enctype="multipart/form-data"[/b]>
Je serais toi je renverai le formulaire vers ta page d'accueil (action="page_accueil.html") et je mettrai le code du mail su cette meme page.
if(!empty($_POST['message'])) {

  $message = $_POST['message'] ;
  $email = $_POST['email'] ;

  // here we use the php mail function
  // to send an email to:
  // [email protected]
  mail( "[email protected]", "Une nouvelle question",$message, "From: $email" );
echo 'Merci pour votre message';
}

Re: Php + Bootstrap + Email

par contact12 » 14 juin 2014, 13:17

Merci pour ton retour, cela m'aide beaucoup !

J'ai donc modifié les $_POST ce qui donne :
<?php
  $message = $_POST['message'] ;
  $email = $_POST['email'] ;

  // here we use the php mail function
  // to send an email to:
  // [email protected]
  mail( "[email protected]", "Une nouvelle question",$message, "From: $email" );
?>
Maintenant quand je clique sur SEND, j'ai ceci qui s'affiche dans la barre d'adresse : http://viktorius.fr/email.php?message=test&email=Michel Pourquoi ?
Comment faire pour que le message soit envoyé et que s'affiche un message de remerciement sur la page d'accueil.

Re: Php + Bootstrap + Email

par xTG » 14 juin 2014, 13:03

Ton input s'appelle question et non message.
Utilises $_POST ou lieu de $_REQUEST car ce dernier est une somme de plusieurs super-globales (GET, POST, ect) et pose donc problème si les index se recoupent entre eux.
Il est normal de tomber sur une page blanche. Ta page Email.php n'affiche rien. ;)

Re: Php + Bootstrap + Email

par Invité » 14 juin 2014, 12:18

Bonjour à tous,

Je commence à avancer maintenant je reçois un mail mais pas le contenu...c'est à dire la question.
De plus, quand je clique sur SEND, cela me renvoie à /email.php avec une page blanche.
J'utilise PHPmailer. Dois-je configurer phpmailer également ?

Si vous trouvez une solution ce serait super sympa !

Merci !

Voici le code HTML :
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta name="description" content="">
    <meta name="author" content="">

    <title>Ask Us A Question - Question about Paris</title>

    <link rel="icon" href="favicon.ico" />

    <!-- Bootstrap core CSS -->
    <link href="css/bootstrap.css" rel="stylesheet">

    <!-- Custom Google Web Font -->
    <link href="font-awesome/css/font-awesome.min.css" rel="stylesheet">
    <link href='http://fonts.googleapis.com/css?family=Lato:100,300,400,700,900,100italic,300italic,400italic,700italic,900italic' rel='stylesheet' type='text/css'>

    <!-- Add custom CSS here -->
    <link href="css/landing-page.css" rel="stylesheet">



</head>

<body>

    <nav class="navbar navbar-default navbar-fixed-top" role="navigation">
        <div class="container">
            <div class="navbar-header">
              
                <a class="navbar-brand" href="http://viktorius.fr">Question about Paris</a>
            </div>
           
            <!-- /.navbar-collapse -->
        </div>
        <!-- /.container -->

        
    </nav>

    </div>
    <div class="intro-header">

        <div class="container">

            <div class="row">
                <div class="col-lg-12">
                    <div class="intro-message">
                        <h1>Tourist in Paris ?</h1><p>
                        <h3>Ask us a question. We answer with love.</h3></p>

<form method="post" action="email.php">
     <div style="margin-bottom: 25px" class="input-group">
                                        <span class="input-group-addon"><img src="img/glyphicons_012_heart.png"></span>
                                        <input id="question" type="text" class="form-control" name="question" value="" placeholder="What is your question ?">                                        
                                    </div>



                                 <div style="margin-bottom: 25px" class="input-group">
                                        <span class="input-group-addon"><img src="img/glyphicons_290_skull.png"></span></span>
                                        <input id="email" type="text" class="form-control" name="email" value="" placeholder="For the answer, let us your email :">                                        
                                    </div>



       <!-- Form itself -->
         
                  
        <div class="form-actions">
        <button type="submit" class="btn btn-primary pull-right">Send</button><br />
          </form>
    </div>
</div>
</div>
</div>


  <!-- ... your HTML <body> content ... -->

   
     <!-- ... more of your HTML  content ... -->

</div>
    <!-- JavaScript -->
    <script src="js/jquery-1.10.2.js"></script>
    <script src="js/bootstrap.js"></script>

    <!-- JS FILES -->
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> 

</body>

<footer>
</footer>

</html>
Voici le code en PHP (Email.php) :
<?php

  
  $message = $_REQUEST['message'] ;
  $email = $_REQUEST['email'] ;

  // here we use the php mail function
  // to send an email to:
  // [email protected]
  mail( "[email protected]", "Une nouvelle question",$message, "From: $email" );
?>

Re: Php + Bootstrap + Email

par contact12 » 14 juin 2014, 10:50

Bonjour,

Merci pour le conseil.
Je vais regarder pour intégrer la fonction html form à mon HTML.

Re: Php + Bootstrap + Email

par telnes » 13 juin 2014, 11:39

hello

je ne sais pas ce qu'est bootsrap mais il ne faut pas de balise html form ?

Php + Bootstrap + Email

par contact12 » 13 juin 2014, 11:31

Bonjour à tous,

Je début en PHP et Bootstrap et je tente de mettre en place ce tutoriel : http://untame.net/2013/05/how-to-build- ... h-php-ajax pour créer un formulaire de contact. Mais l'email ne s'envoie pas.
De plus, après avoir cliqué sur Send, j'ai cette adresse qui s'affiche : http://viktorius.fr/?question=&email=&save=contact
Avez-vous une idée pour trouver une solution ?

Ici le code HTML :
<div style="margin-bottom: 25px" class="input-group">
<span class="input-group-addon"><img src="img/glyphicons_012_heart.png"></span>
                                        <input id="login-username" type="text" class="form-control" name="username" value="" placeholder="What is your question ?">                                        
                                    </div>

                                    <h5 id="Email" align="left" color="#000"<span style="color:black">For the answer, let us your email :</h5>


                                 <div style="margin-bottom: 25px" class="input-group">
                                        <span class="input-group-addon"><img src="img/glyphicons_290_skull.png"></span></span>
                                        <input id="login-username" type="text" class="form-control" name="username" value="" placeholder="Email">                                        
                                    </div>



       <!-- Form itself -->


        <div class="form-actions">
            <input type="hidden" name="save" value="contact">
        <button type="submit" class="btn btn-primary pull-right">Send</button><br />
Ici le code PHP :

<?php
ini_set(“SMTP”,”smtp.viktorius.fr”);
ini_set(“smtp_port”,”25″);
$myemail = '[email protected]';
if (isset($_POST['question'])) {
$email = strip_tags($_POST['email']);
echo "<span class=\"alert alert-success\" >Your message has been received. Thanks! Here is what you submitted:</span><br><br>";
echo "<stong>Question:</strong> ".$question."<br>";
echo "<stong>Email:</strong> ".$email."<br>";