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 :

envoi d'un mail en local en php


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 2
    Par défaut envoi d'un mail en local en php
    Bonjour,
    je réalise un réseau social or lorsqu'une incription est réalisée j'ai réussi à gérer l'en voi de mail en local mais celui ci n'est pas cliquable dans gmail...
    pouvez- vous m'aider svp ?

    mon mail:
    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
    <!doctype html>
        <html lang="fr">
            <head>
                <meta charset="utf-8">
            </head>
            <body>
                <h1>Activation de compte</h1>
                Pour activer votre compte, merci de bien vouloir cliquer sur ce lien:
                <a href="<?= 'localhost:8888/social_network/activation.php?p='.$pseudo.'&amp;token='.$token?>">Lien d'activation</a>
            </body>
        </html>
     
    le lien:
    <html>
        <?php
        session_start();
     
        require "config/database.php";
        require "includes/fonctions.php";
     
        //On vérifie que tous les paramètres sont présents
        //Si ce n'est pas le cas, l'utilisateur est redirigé vers la page d'accueil
        if(!empty($_GET['p']) && is_already_in_use('pseudo', $_GET['p'], 'users') && !empty($_GET['token'])){
            $pseudo = $_GET['p'];
            $token = $_GET['token'];
     
            //le pseudonyme et le token sont-ils valides ?
            $q = $db->prepare('SELECT mail, mdp FROM users WHERE pseudo = ?');
            $q->execute([$pseudo]);
     
            $data = $q->fetch(PDO::FETCH_OBJ);
            $token_verif = sha1($pseudo.$data->mail.$data->mdp);
     
            //Si le token est valide, nous activons le compte de l'utilisateur
            //Dans le cas contraire, il est redirigé vers la page d'accueil avec un message d'erreur
            if($token == $token_verif){
     
                $q = $db->prepare("UPDATE users SET active ='1' WHERE pseudo = ?");
                $q->execute([$pseudo]);
     
                echo "Votre compte a été activé";
                redirect('login.php');
            } else {
                echo "Pseudo et information de sécurité invalide !";
            }
     
        }?>
    </html>

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Il manque le protocole http:// devant ton url.
    Également ton url ne doit pas pointer sur l'adresse "localhost" mais sur le nom public de ton serveur.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Mai 2016
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 30
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2016
    Messages : 2
    Par défaut
    je n'ai pas d'adresse public, j'ai télécharger sendmail pour que mon lien fonctionne en local ..
    d'ou le localhost ..

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    sendmail est un serveur de mail ; il ne traite pas les liens.
    Pour qu'un utilisateur puisse venir sur ton serveur depuis le mail envoyé, il faut lui donner l'adresse du serveur dans le lien.
    Si c'est juste pour un test, tu peux toujours renseigner l'ip de ton serveur (il faut bien entendu que tout soit correctement configuré sur ta machine pour qu'elle accepte et traite la connexion entrante).
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

Discussions similaires

  1. Envoi d'un mail en local
    Par nightfall59 dans le forum Langage
    Réponses: 14
    Dernier message: 27/01/2011, 14h28
  2. Xampp Php : problème envoi mail en local.
    Par diabli73 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 03/12/2008, 15h28
  3. [Mail] Envoie d'un mail en local
    Par SavageMessiah dans le forum Langage
    Réponses: 5
    Dernier message: 31/10/2006, 15h46
  4. Envoi d'un mail en PHP chez free
    Par noutnout53 dans le forum Langage
    Réponses: 7
    Dernier message: 25/08/2006, 18h16
  5. [FPDF] Envoi d'un mail au format PDF avec PHP
    Par King_T dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 08/05/2006, 19h19

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