[RESOLU] Envoyer un mail à la lecture d'un autre

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] Envoyer un mail à la lecture d'un autre

Re: [RESOLU] Envoyer un mail à la lecture d'un autre

par Mazarini » 17 juin 2014, 13:12

Par défaut, les clients mails ne lisent pas les images qui ne sont pas de le mail.

Re: Envoyer un mail à la lecture d'un autre

par skywhi » 17 juin 2014, 11:53

Ok, un grand merci pour votre aide! Mon problème est résolu!

Re: Envoyer un mail à la lecture d'un autre

par Elie » 17 juin 2014, 11:51

... Stocker l'information dans une base de données ?
... Creer une image par mail et si l'image existe deja c'est que le mail a déjà été affiché ?

Re: Envoyer un mail à la lecture d'un autre

par skywhi » 17 juin 2014, 11:48

Oui, merci! :) Je vais sécuriser tout ça! Mais par contre, comment puis-je faire pour que le script ne s'exécute qu'une seule fois? Parce que là, à chaque fois que j'ouvre le 1er mail, j'en reçois un pour me dire 'merci d'avoir lu le précédent message'.

Re: Envoyer un mail à la lecture d'un autre

par telnes » 17 juin 2014, 09:23

hello

personnellement j'aurais inversé la gestion des mails et la génération de l'image.

ensuite $_GET au lieu de $_POST

et ensuite c'est le SPAM KING royal script =D> qu'est ce qui ce passe si un utilisateur fait une boucle sur ce lien avec des emails de n'importe qui !!! (ensuite je te laisse un peu de lecture en supplément, http://securephpwiki.com/index.php/Email_Injection)

donc il faut un id unique genre hash (http://php.net/manual/en/function.hash.php) linké à ton user/mail ... et c'est lui que tu met dans ta var $_GET. voir même pourquoi pas faire un id à la volé, à l'envoi du mail stocké dans la BD et que tu delete une fois le lien reçu et le new mail envoyé.

Re: Envoyer un mail à la lecture d'un autre

par Elie » 17 juin 2014, 08:32

Peut être le $to = $_POST['mail']; au lieu de $to = $_GET['mail'];

Le plus simple est d'aller sur http://monsite.com/mail.php?mail=adressemail et de voir ce qu'il se passe...
En gros tu verrais surement une erreur concernant l'inexistance de la variable 'mail'

Re: Envoyer un mail à la lecture d'un autre

par skywhi » 16 juin 2014, 23:28

J'ai ajouté dans le message du mail (dans la fonction mail) un lien vers une image comme ceci:
<img src="http://monsite.com/mail.php?mail=adressemail" alt=""/>';
Et j'ai créé la page mail.php qui contient ceci:
<?php
  header ("Content-type: image/png");
  $image = imagecreate(1,1);
  $transparent = imagecolorallocate($image, 255, 255, 255);
  imagecolortransparent($image, $transparent);
  imagestring($image, 4, 35, 15, "", $transparent);
  imagepng($image);
  
  $to = $_POST['mail'];
  $from = 'Webmaster';
  $subject = 'Merci!';
  $message = 'Merci d\'avoir lu le précédent message!';
  $headers = 'From: Webmaster <[email protected]>' ."\n";
  $headers .= 'MIME-version: 1.0' ."\n";
  $headers .= 'content-type: text/html; charset="utf-8"' ."\n";
  if(mail($to, $subject, $message, $headers)) {
  echo '';
  }
  else{
  echo '';
  }    
?>
L'image s'affiche mais le script ne se lance pas. Pourquoi?

Re: Envoyer un mail à la lecture d'un autre

par Elie » 16 juin 2014, 13:31

Re: Envoyer un mail à la lecture d'un autre

par telnes » 16 juin 2014, 13:28

hello

il faut faire un mail au format HTML
dedans tu créer un lien vers une image (http://monserv.php/fake.php?id=[unechai ... fietonuser]) en background par exemple
lorsque le mail est ouvert (il est demandé (souvent) à l'utilisateur si il veux charger les images !)
si oui
le lien est requété
fake.php?id=... récupère l'id fait son taff (envoyer un mail) et retourne un pixel gif par exemple (histoire d'etre propre)
et voila

Re: Envoyer un mail à la lecture d'un autre

par skywhi » 16 juin 2014, 13:19

Ton idée m'intéresse mais peux-tu être plus précis sur la façon dont je dois procéder pour créer cette image PHP?

Re: Envoyer un mail à la lecture d'un autre

par Elie » 15 juin 2014, 17:11

Je ne suis pas sur ce que je dis tient la route.
Ce que tu peux eventuellement faire c'est une image en PHP qui quand elle est généré, ce meme code PHP envoit le mail ...
Les sociétés qui gerent les newsletter on un systeme pour savoir combien de gens ont lu le mail ou cliquer sur le lien donc ca doit être faisable.

Envoyer un mail à la lecture d'un autre

par skywhi » 15 juin 2014, 16:27

Bonjour à tous!

Je m'excuse par avance si le titre n'est pas très explicite, je ne savais pas trop comment formuler l'idée en quelques mots. Je vais vous expliquer ce que je souhaite faire: j'aimerais qu'à la lecture d'un mail (que j'ai précédemment envoyé au destinataire via la fonction mail en PHP), le destinataire en reçoive automatiquement un autre lui disant "Merci d'avoir lu le mail précédent!". Du coup, je me demande s'il est possible de faire une fonction mail dans le sujet du message d'une fonction mail?! (oui, ça semble bizarre). Mais je sais qu'il existe un moyen puisque j'ai reçu ce type de mail, il y a peu.

Je suis dans le flou, pouvez-vous m'éclairer? D'avance un grand merci!