mail comme spam - phpmailer, comment éviter les
Je sais que dans le premier regard de nombreux utilisateurs de la marque à cette question que les doublons, mais après la lecture de plus de 10 question je n'ai pas trouver de réponse satisfaisante, presque toutes les questions réponses ayant des mots comme "Il n'y a pas beaucoup que vous pouvez faire à ce sujet.", "Je ne suis pas sûr", "Il n'y a pas sure shot truc" etc. c'est pourquoi je suis en train d'écrire à cette question, et je pense que c'est très généralisé des questions et chaque développeur php faces au moins une fois, ok, assez de discours 🙂 , maintenant, ma question est..
Je travaille sur une application de gestion de projet et j'utilise phpmailer pour envoyer un mail lorsqu'une tâche est créée ou quelqu'un d'observations sur aucun bug mails sont envoyés à des utilisateurs relatifs, en fait au lieu de l'envoi de mails dès l'action se passe, j'ai créé un "notifications" sur table", où j'ai fait enregistrer toutes les données de messagerie et un script cron puis envoyer tous les mails, voici une partie de mon script cron.
$query = "select * from notifications where 1 ";
$projects = $obj_basic->get_query_data($query);
if(!empty($projects))
{
foreach($projects as $data)
{
$message = html_entity_decode($data['content'], ENT_QUOTES);
list($ton, $email) = get_name_email($data['to']);
if(!empty($email))
{
$query = "select send_notification from users where email='$email' AND send_notification !='1' ";
$users = $obj_basic->get_query_data($query);
if(!empty($users))
{
$deleteQuery = "delete from notifications where id ='".$data['id']."'";
$obj_basic->run_query($deleteQuery, 'DELETE');
continue;
}
$comment_id = $data['reference_id'];
$attribute = $data['attribute'];
$mail = new PHPMailer();
list($fromName, $fromEmail) = get_name_email($data['from']);
if(!empty($comment_id) && $attribute == 'comment')
{
$fromEmail = '[email protected]';
}
$mail->SetFrom($fromEmail, $fromName);
$mail->AddReplyTo($fromEmail, $fromName);
$mail->AddAddress($email, $ton);
$mail->BouncedTo = $fromEmail;
$mail->IsHTML(true);
$mail->Subject = $data['subject'];
$mail->Body = $message;
$MessageID = "<".md5($comment_id.'_'.$email).'@changewebaddress.com>';
$mail->MessageID= $MessageID;
if($mail->Send()) {
if(!empty($comment_id) && $attribute == 'comment')
{
$query = "SELECT message_id FROM `project_comments` WHERE `id`='$comment_id'; ";
$project_comments = $obj_basic->get_query_data($query, 'SELECT');
if(!empty($project_comments))
{
$project_comments[0]['message_id'] = html_entity_decode(trim($project_comments[0]['message_id'], ","));
$query = "UPDATE `project_comments` SET `message_id`=CONCAT_WS(',', '".mysql_escape_string($project_comments[0]['message_id'])."', '".mysql_escape_string(html_entity_decode($MessageID))."') WHERE `id`='$comment_id'; ";
$obj_basic->run_query($query, 'UPDATE');
}
}
$deleteQuery = "delete from notifications where id ='".$data['id']."'";
$obj_basic->run_query($deleteQuery, 'DELETE');
}
}
}
}
que par ce que j'ai testé tout à l'air bon, depuis que j'utilise phpmailer il définit d'en-tête requis il définit également 'Return-Path:" et " Reply-to:' en-tête.
Est-il une solution exacte à ce problème
Veuillez rechercher les doublons d'abord, c'est un sujet très vaste et malgré vous utilisez une bibliothèque spécifique. Par conséquent, l'éducation première.
Et non, votre question ne devenir qu'une seule piont qui donne une réponse claire à ce problème maintenant, ou puis. Pas de. Au lieu de cela, les dix questions que vous avez trouvé ce exactement avez-vous essayé de montrer le code de votre tente et qu'est-ce exactement ne fonctionne pas pour vous? Vous devez expliquer que si vous voulez vraiment obtenir cette réponse.
Que cron script est 100% inutile de préciser pourquoi vos e-mails sont livrés en tant que spam. Vous l'avez dit vous-même - vos points de recherche des réponses qui disent "pas beaucoup peut être fait". Je ne suis pas sûr exactement comment vous vous attendez à ce que de poser la même question va entraîner une réponse différente. Vous devez à la place de la recherche pourquoi e-mails peuvent être marqués comme spam, et de fixer votre e-mail de balisage en conséquence.
J'ai lu votre question et le comprends parfaitement; vous êtes posé la même question que tout le monde, vous avez lu les mêmes réponses, et parce qu'ils n'ont pas une solution, vous pensez qu'en posant la même question que vous obtiendrez une réponse différente. Je ne comprends pas votre logique, mais je comprends votre question.
OriginalL'auteur Subodh Ghulaxe | 2013-04-30
Vous devez vous connecter pour publier un commentaire.
c'est vraiment dépend de quel dieu[s] vous avez l'intention de traiter avec, si vous avez la malchance d'avoir à traiter avec Ia'hu ou Km'Kaast j'espère que vous n'êtes pas terriblement attaché à tous de vos enfants.
Aussi seulement vous apporter un sacrifice une fois, ne doit pas dire qu'il va aider à jamais.
J'ai eu quelques rencontres avec les pouvoirs maléfiques de G'mail et de Vivre et de savoir qu'ils peuvent être très imprévisibles! Merci pour l'avertissement!
Comment et où avez-vous vérifier le numéro 6?
OriginalL'auteur Sammitch
Malheureusement pas. C'est une non-question triviale avec beaucoup de complexité qui empêche des solutions exactes.
Au lieu de cela vous avez besoin de savoir pour chaque e-mail qui est marqué comme spam, ce qui conduit à l'spam score et reconstituer ensuite à la partie(s) de logiciels et systèmes que vous utilisez - quelle que soit la configuration (améliorer la configuration et l'installation) ou de traitement (patch du logiciel que vous utilisez et de la re-compilation/déploiement).
Si vous souhaitez améliorer la situation, ici, sur ce site, vous avez écrit que de nombreuses questions sont décevants - s'il vous plaît garder un worklog de que faire et document de chaque cas. Mettre cela comme une réponse ici, afin que les futurs utilisateurs puissent en bénéficier. Ce serait ne pas faire les mêmes erreurs que les utilisateurs précédents ont été faites sur le site ne pas faire de cette documentation, et donc l'information est manquante.
OriginalL'auteur M8R-1jmw5r
La accepté de répondre a beaucoup de bons conseils dans ce. En outre, l'ajout d'un enregistrement SPF pour mon DNS aidé à éviter les filtres anti-spam. En savoir plus sur les enregistrements SPF:
http://en.wikipedia.org/wiki/Sender_Policy_Framework
Microsoft dispose d'un outil pour aider à créer de tels dossiers:
http://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard/
OriginalL'auteur Mandu
Je sais que cela a déjà accepté de répondre mais c'est pour d'autres qui auraient le même problème comme moi et fini ici. J'ai eu un site web et d'envoyer des mails à partir de mon site web a fini dans les boîtes à spam. Même si j'ai essayé d'utiliser phpmailer et l'ajout de nos sociétés serveur de messagerie électronique SMTP.
Cependant cela pourrait être facilement résolu en sorte de liste blanche de l'adresse IP du site web de l'envoyer filtre de votre serveur de messagerie. Comment cela se fait exactement je ne sais pas, parce que l'admin du serveur de messagerie de l'as fait pour moi(google, je suppose).
Faire cela signifie que si le récepteur effectue une recherche DNS ou une recherche de l'IP de votre serveur de messagerie. Le serveur de messagerie électronique indique le côté de réception qu'il a bien été envoyé à partir de lui ou de son associer des adresses IP et à cet effet, qu'il ne finira pas dans le dossier spam.
Cependant si vous faites cela, il n'est pas nécessaire pour le phpmailer et le standard de la fonction mail() fonctionne aussi.
OriginalL'auteur kpp