Probleme interception de MAIL MAMP MAILDEV

Elwaid

Elwaid Le 18 avril 2018 à 23:37 (Édité le 25 janvier 2019 à 17:54)

<?php
session_start();
function debug ($variable){
    echo '<pre id="debug">' . print_r($variable, true) . '</pre>';
}
function str_key($lenght){                                                                    //key 60 characters to send an email but not in local 
$alphabet = "0123456789AZERTYUIOPQSDFGHJKLMWXCVBNazertyuiopqsdfghjklmwxcvbn";
return substr (str_shuffle(str_repeat($alphabet, $lenght)), 0, $lenght);}
error_reporting(E_ALL); 
ini_set('display_errors', '1');
try{
    
$pdo = new PDO( 'mysql:dbname=sledom;host=localhost', 'root', 'root');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_OBJ);
}
catch (Exception $e) {
    die('Erreur : ' . $e->getMessage());
}
if(isset($_POST['forminscription']))
{
        $firstname = htmlspecialchars($_POST['firstname']);
        $lastname = htmlspecialchars($_POST['lastname']);
        $email = htmlspecialchars($_POST['email']);
        $username = htmlspecialchars($_POST['username']);
        $password = htmlspecialchars($_POST['password']);
        
    if(!empty($_POST['firstname']) AND !empty($_POST['lastname']) AND !empty($_POST['email']) AND !empty($_POST['username']) AND !empty($_POST['password']))
    {
        if (preg_match('/[a-zA-Z-\'éèëêaàâäiïîñ]+$/', $_POST['firstname'])){
            
            if (preg_match('/[a-zA-Z-\'éèëêaàâäiïîñ]+$/', $_POST['lastname'])){
                
                if (preg_match('/[a-zA-Z-_\'éèëêaàâäiïîñ0-9]+$/', $_POST['username'])){
                
                    if (preg_match('/[a-z-_0-9]+$/', $_POST['email'])){
                
                        $usernamelenght = strlen($username);
                        if($usernamelenght <= 255 AND $usernamelenght >= 2)
                        {
                            
                            $passwordlenght = strlen($password);
                            if($passwordlenght >= 8)
                            {
    
                                if(filter_var($email, FILTER_VALIDATE_EMAIL))
                                {
                                    
                                    $requsername = $pdo->prepare('SELECT * FROM users WHERE username = ?');
                                    $requsername ->execute(array($username));
                                    $usernameexist = $requsername->rowcount();
                                    if($usernameexist == 0)
                                    {
                                        
                                        $reqemail = $pdo->prepare('SELECT * FROM users WHERE email = ?');
                                        $reqemail ->execute(array($email));
                                        $emailexist = $reqemail->rowcount();
                                        if($emailexist == 0)
                                        {
                                    
                                        if(empty($errors)){
                                        
                                            $req = $pdo->prepare("INSERT INTO users SET firstname = ?, lastname = ?, email = ?, username = ?, password = ?, confirmation_token = ?");
                                            $password = password_hash($_POST['password'], PASSWORD_BCRYPT);
                                            $token = str_key(60);
                                            debug($token);  //montre la clé de confirmation en attendant la phase de production et l'envoi de mail
                                            $req->execute([$_POST['firstname'], $_POST['lastname'], $_POST['email'], $_POST['username'], $password, $token]);
                                            $user_id = $pdo->lastinsertid();
                                            mail($_POST['email'], 'Account confirmation', "Hello, \n\n To validate your account, please click on this link : \n\nhttp://localhost:8888/MON%20SITE/confirmation.php?id=$user_id$token");
                                            //http://localhost:8888/MON%20SITE/confirmation.php?id=()&token=(GS3SikspQlvoDneLxFeWBNXPSCuRUg3Q0JR7YFyOJtRJzj0I9aLFGvvRYvoU)//
                                            $message = "A confirmation email have been sent, </br> Thanks for your registration.";
                                            header("Refresh: 8;URL=Signin.php");
                                            
                                            
                                            }else{
                                                $errors = "les infos ne sont pas envoyées";
                                            }
                    
                                        }else{
                                        $errors ="This Email Adress is already used";
                                    }
                    
                                    }else{
                                        $errors ="This Username is already used";
                                    }
                    
                                }else{                            
                                    $errors = "Please enter a valid Email Adress";
                                }
                            
                            }else{
                                $errors = "Your password must contain at least 8 characters";
                            }
                        
                        }else{
                            $errors ="Your username must be between 2 and 255 characters long";
                        }
                    
                    }else{
                        $errors = "Please enter a valid Email Adress";
                    }
   
                }else{
                    $errors = "Please enter a valid Username"; 
                }
            }else{
                $errors = "Please enter a valid Last Name";
            }
        
        }else{
            $errors = "Please enter a valid First Name";
        }
 
    }else{
        $errors="All fields must be filled";
    }
    
}
?>
<!DOCTYPE html>
    
    <html>
        <head>
            <title>Become Sledomer</title>
            <meta charset="utf-8">
            <link rel="stylesheet" href="style.css">
            <link href="https://fonts.googleapis.com/css?family=Bubbler+One" rel="stylesheet">
            <link href="https://fonts.googleapis.com/css?family=Bungee+Hairline" rel="stylesheet">
        </head>
        
        
      
        <body>
        
            
            <div id= "contenu">                                                                    <!-- everything on my webpage -->
            
                <h1 id= "logo1"><a><img src="IMAGES/LOGO1..psd"></a></h1>
                
            </div>
            
            
                <h2 id= "slogan1"> Find your style <br>Become your own model</h2>
                
               
            
            
            <h1 id= "titlep1">Become Sledomer</h1>
         
         
         
         
            
            <h1 id = "sloganpage1"> Sign up to post your look <br> And earn money.</h1>
            
                <div>
                    <h1 id= "signupwith">Sign up with<a href= "http://facebook.com"><img src= "IMAGES/facebook.png"></a><a href= "http://plus.google.com"><img src= "IMAGES/google+.png"></a></h1>
                </div>
                
    
            <h1 id= "OR">OR</h1>
         
         
            <?php 
                if(isset($errors))
                {
                    echo '<p id="erreur">' .$errors. "</p>";
                }
            ?>
            
            <?php 
                if(isset($message))
                {
                    echo '<p id="confirme">' .$message. "</p>";
                }
            ?>
            
            <img class= "mannequin" src=IMAGES/Mannequin1.jpg>
         
         
            <form method="post" action="">
            
                <fieldset id=formulaire1>
                    <label for= "first name"></label>
                    <input type= "text" id= "firstname" name="firstname" placeholder="First Name" required="required" value="<?php if(isset($firstname)) {echo $firstname;} ?>"/>
                    
                    <label for= "last name"></label>
                    <input type= "text" id= "lastname" name="lastname" placeholder="Last Name" required="required" value="<?php if(isset($lastname)) {echo $lastname;} ?>"/><br> 
                    
                    <label for= "email"></label>
                    <input type= "email" id= "email" name="email" placeholder="Email Adress" required="required" value="<?php if(isset($email)) {echo $email;} ?>"/><br>
                    
                    <label for= "username"></label>
                    <input type= "text" id= "username" name="username" placeholder="Userame" required="required" value="<?php if(isset($username)) {echo $username;} ?>"/><br>
                    
                    <label for= "password"></label>
                    <input type= "password" id= "password" name="password" placeholder="Password" required="required"/><br> 
                </fieldset>
            
    <p id= "accept">By signing up, you agree to our Terms & Conditions</p>
                
                    <input class="signup" type="submit" name = "forminscription" value="Sign Up">
          
            </form>
            
            
            
            <p id="members">Have an account ? | <a href= "Signin.php"> Sign In</a></p>
    
                <div id= "footer">                                                                  <!-- footer -->
                
                
                    <p id= "credit1">©2018 • SLEDOM®    -    All right reserved    |                                            </p>
                    <p id="credit"><a href= Terms&conditions.php>Terms & Conditions</a></p>
                    
                    
                    <div id= "footerlogo">
                        <h1><a><img src="IMAGES/LOGO1..psd"></a></h1>
                    </div>
                
                
                    <div id= "footerpartners">                                                                 
                        <ul>                                                                        <!--menu footer-->
                            <p class = titlepartners > PARTNERS</p>
                            <li><a href= "Creators.php"> Creators</a></li>
                            <li><a href= "Developers.php">Developers</a></li>
                            <li><a href= "Press.php">Press</a></li>
                            <li><a href= "Advertise.php">Advertise</a></li>
                        </ul>
                    </div>
                    
                    <div id= "footerresources">                                                                 
                        <ul>                                                                        <!--menu footer-->
                            <p class = titleresources > RESOURCES</p>
                            <li><a href= "Policy&Safety.php"> Policy & Safety</a></li>
                            <li><a href= "Copyright.php">Copyright</a></li>
                            <li><a href= "Privacy.php">Privacy</a></li>
                            <li><a href= "Help.php">Help</a></li>
                        </ul>
                    </div>
                    
                    <div id= "footerconnect">                                                                 
                        <ul>                                                                        <!--menu footer-->
                            <p class = titleconnect > CONNECT</p>
                            <li><a href= "http://facebook.com"> <img src= "IMAGES/facebook.png"> Facebook</a></li>
                            <li><a href= "http://twitter.com"> <img src= "IMAGES/Twitter.png"> Twitter</a></li>
                            <li><a href= "http://instagram.com"><img src= "IMAGES/Instagram.png"> Instagram  </a></li>
                            <li><a href= "http://plus.google.com"><img src= "IMAGES/google+.png"> Google+ </a></li>   
                        </ul>
                    </div>
                    <select id = "changelanguage" name="choix">
                        <option value="choix1">English</option>
                        <option value="choix2">French</option>
                    </select>
               </div>
        
        </body>
    </html>



Bonjour à tous, 

Voilà cela fait plusieurs jours que je fouille internet à la recherche d'une solution. 

Je ne parviens absolument pas à intercepter les mail provenant de mon script. 

J'ai constaté que de nombreuses personnes ont le même soucis, mais généralement les solution sont propres à chacun des cas. 

Si quelqu'un à une idée 😀 

Je suis sous MAC OS, j'utilise MAMP (pas pro). 

Merci .
Cod_Is_All

Cod_Is_All Le 16 juin 2018 à 14:05

Bonjour il y'a beaucoup de problèmes pour l'interception avec maildev
Cependant je t'invite à configurer le fichier php.ini de tel sorte a pouvoir envoyer directement sur gmail les messages
psedo

psedo Le 24 juin 2018 à 23:40

Bonjour il y'a beaucoup de problèmes pour l'interception avec maildev 
Cependant je t'invite à configurer le fichier php.ini de tel sorte a pouvoir envoyer directement sur gmail les messages 😁
Profil introuvable

Profil introuvable Le 25 juin 2018 à 04:57

Hello 'psedo',

@psedo, c'est quoi l'utilité de répétez la même chose que @Cod_Is_All ? 😐
psedo

psedo Le 25 juin 2018 à 22:03

😀 excuse-moi  😇 c'est une erreur je voulais copier un lien mais j'ai copier son ( @Cod_Is_All ) text exusez-moi 😕 
Profil introuvable

Profil introuvable Le 25 juin 2018 à 23:28

Re:

@psedo, ce n'est pas grave 😇😅 Si jamais t'a remarqué un bug, n'hésite pas c'est ici ! 😉
@Cod_Is_All, nous sommes à ton écoute ! 😉
psedo

psedo Le 26 juin 2018 à 15:54 (Édité le 26 juin 2018 à 16:00)

Merci 😀 mais ce n'ai pas un bug du cite c'est mon pc qui a  bugger ! 
Profil introuvable

Profil introuvable Le 26 juin 2018 à 21:10

Re:

@psedo, il a juste besoin d'un p'tit nettoyage, visite SosVirus pour plus d'infos ! 😉
Vous devez être connecté pour poster une réponse. Se connecter ou Créer un compte