Aller au contenu
  • Pas encore inscrit ?

    Pourquoi ne pas vous inscrire ? C'est simple, rapide et gratuit.
    Pour en savoir plus, lisez Les avantages de l'inscription... et la Charte de Zébulon.
    De plus, les messages que vous postez en tant qu'invité restent invisibles tant qu'un modérateur ne les a pas validés. Inscrivez-vous, ce sera un gain de temps pour tout le monde, vous, les helpeurs et les modérateurs ! :wink:

Mettre un lien dans la fonction mail php


Messages recommandés

Posté(e)

voila j'aimerais mettre un lien comme on voit bien souvent lors d'une inscription on recoit un mail de confirmation avec un lien.

le mail marche mais je n'arrive pas a mettre un lien.

après deja des multiples recherches je me tourne vers vous.

deja toute la premiere partie du code, c'est un code trouvé sur un forum mais qui ne fonctionne pas.

voila j'espere que qqun saura m'aider.

 

merci

	$this->msg = '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">' . "\n\n";
$this->msg .= '<html>' . "\n";
$this->msg .= '<head>' ."\n";
$this->msg .= '<title></title>' . "\n";
$this->msg .= '<meta http-equiv="content-type" content="text/html; charset=iso-8859-1">' . "\n";
$this->msg .= '</head>' . "\n";
$this->msg .= '<body bgcolor="#ffffff">' . "\n";
$this->msg.=" <a href='http://localhost/tfe/index.php?action=valid_client&id=".$this->id."'>\n\n";
$this->msg .= '</body>' . "\n";
$this->msg .= '<html>' . "\n";
	$this->msg.= "Validation de votre inscription.\n\n ";
$this->msg.="Pour valider votre inscription veuillez cliquer sur le lien suivant\n\n ";
$this->msg.="Merci";
 if(mail(''.$this->email.'', 'inscription gite', ''.$this->msg.'', $this->headers))
 {
	  $this->test->content.= '<p> un mail de confirmation vous a été envoyé';
 }
 else
 {
	  echo 'Le message n\'a pu être envoyé';
 }

Posté(e)

Tu ajoutes du contenu après la balise </html> ?

Tu n'as pas déclaré $this->email ?

Tu envoies dans le mail un lien vers localhost ?

 

Quel est le contexte de ce bout de code ? Tu es dans la déclaration d'une méthode d'une classe PHP ? Comment appelles-tu cette classe ?

 

Pourquoi sépares-tu les caractères de saut de ligne du reste des chaînes de caractères ?

Pourquoi concatènes-tu systématiquement des chaînes vides à tes arguments ?

Posté(e)

tout le codage HTML viens d'un site qui mettat ca comme truc pour mettre un lien dans les mails.

je n'ai pas mis tout le codage car il me semblait que ce n'etait pas necessaire mais email est déclaré je recupere en gros l'e-mail que la personne a entrée dans le formulaire.

je travail en local d'ou le localhost.

le contexte : un formulaire d'inscription pour un site et j'aimerais que lorsqu'il valide le formulaire au moment ou j'insere les données un mail est envoyé avec un lien et une fois que la personne clique sur le lien ca met dans ma table clients le champ actif a true.

j'ai mis le mail dans ma fonction inserer de ma classe client.

je l'appelle a partir d'une class apllication ou j'ai tout mes case("inserer_client,modifier,...)je l'instancie,....

pour les deux dernieres questions comme ca ne viens pas de moi je ne sais te repondre.

 

mon probleme c'est juste le lien que je n'arrive pas a mettre...

 

merci deja de ta reponse

Posté(e)

OK

Désolé de continuer sur une série de questions, mais....

Au fait, ça coince à quel endroit ? L'envoi de mail ne génère pas d'erreur ? Tu reçois ce mail ou pas ?

Posté(e) (modifié)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html><head><title></title><meta http-equiv="content-type" content="text/html; charset=iso-8859-1"></head><body bgcolor="#ffffff"><a href='http://localhost/examen/index.php?action=valid_client&id='> </body><html>

 

Validation de votre inscription.

Pour valider votre inscription veuillez cliquer sur le lien suivant

Merci

 

pas de soucis pour les questions...

ca donne ca je recois bien le mail mais voila ce que ca donne...

Modifié par gregg
Posté(e)

Remplace cette ligne ...

	$this->msg.=" <a href='http://localhost/tfe/index.php?action=valid_client&id=".$this->id."'>\n\n";

... par ...

	$this->msg.= ' <a href="http://localhost/tfe/index.php?action=valid_client&id='.$this->id.'">bla bla bla</a>\n\n';

Ca ira mieux avec du contenu à l'intérieur de la balise <a> ;-)

Posté(e)

oui c'est fait mais ca va pas changer mon probleme.

vu qu'il affiche tout tel quel... je recois les balises et tout ca...

je vois pas du tout comment changer ca.

merci deja

Posté(e)

Ce n'est qu'un début.

Dans les headers, ajoute "Content-Type: text/html" (ou change l'actuel header qui définit, pour l'instant, le Content-Type en text/plain)

Ensuite, on mettra un peu d'ordre dans le HTML que tu envoies... (cela dit, si tu veux le faire tout de suite, déplace les balises de fin de body et de fin de html après le contenu de ton mail)

Posté(e)

j'ai changé le header et deja changé les balises...

ca marche j'ai compris.

oauis en faite on doit tout envoyer sous format HTML ou text mais pas les deux?

 

qu'entends tu par metre de l'ordre dans le codage html?

 

un grand merci deja

Posté(e)
on doit tout envoyer sous format HTML ou text mais pas les deux?
On peut envoyer un mail avec deux contenus différents (html et texte) mais pas juste en les mettant l'un à la suite de l'autre dans le corps du mail. Il faut l'envoyer au format "multipart" et c'est un tout autre sport !

Déjà, on a atteint un premier but : envoyer un mail au format html !

 

qu'entends tu par metre de l'ordre dans le codage html?
Je pensais que le contenu qui suivait la balise "</html>" était le corps du mail au format HTML, c'est pour cela que je disais qu'il fallait tout remettre dans le bon ordre...
  • Tonton a modifié le titre en Mettre un lien dans la fonction mail php

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.
Remarque : votre message nécessitera l’approbation d’un modérateur avant de pouvoir être visible.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

  • En ligne récemment   0 membre est en ligne

    • Aucun utilisateur enregistré regarde cette page.
×
×
  • Créer...