PhpMyNewsLetter 2.0

Support et annonces PhpMyNewsLetter.

Vous n'êtes pas identifié(e).

Annonce

Pour me permettre de mieux vous aider au mieux, merci d'être le plus précis possible en donnant :
- la version de phpmynewsletter utilisée
- votre hébergement : personnel, dédié, mutualisé
- votre hébergeur (OVH, free, Infomaniak, 1and1,...)
- votre OS : linux, windows
- version de PHP (5.3, 5.6, 7.0, hhvm...)
Toutes les réponses à mes questions qui sont sans retour de votre part seront considérées comme résolues !

#1626 Re : Support général » Infos sur les désabonnements » 19-02-2015 11:00:02

Bonjour PC,

Jusqu à la dernière version on supprimait les utilisateurs qui se désabonnaient.
Dés la prochaine version, et pour faire suite à plusieurs demandes, il sera possible de connaître les utilisateurs qui se désabonnent.
Il appartiendra aux administrateurs à veiller au bon respect des lois et de ne pas réactiver ces utilisateurs.
Ils pourront également purger ces listes ce désabonnes.
Ceci permettra un suivi plus fin des statistiques.
Demande reçue !

Bonne journée
Arnaud

#1627 Re : Support général » bug dans bounce.php » 23-03-2015 12:30:55

Bonsoir Manou,

Je suis un peu en congés, alors je n'ai pas tout sous les yeux.
La ligne 83 concerne la recherche du type d'erreur, l'explication (findStatusExplanationsByCode) à partir du code retourné par "$result = $cwsMailBounceHandler->processMails();"

Il se pourrait donc que la ligne $item['recipients'][0]['status'] ne soit pas renseignée et donne donc une erreur "Undefined offset".

Je préconise l'ajout d'un var_dump de $item avant chaque boucle :

foreach($result['msgs'] as $item){
            var_dump($item);
            $expl = $cwsMailBounceHandler->findStatusExplanationsByCode($item['recipients'][0]['status']);
            if($item['processed']&&$item['recipients'][0]['action']=='failed'&&$type_env=='prod'){
                UpdateEmailError($cnx,$row_config_globale['table_email'],$list_id,$item['recipients'][0]['email'],
                                 $item['recipients'][0]['status'],$item['recipients'][0]['bounce_type'],$item['recipients'][0]['bounce_cat'],
                                 $expl['third_subcode']['title'],$expl['third_subcode']['desc']);
                UpdateEmailSendError($cnx,$row_config_globale['table_send'],$list_id);
            }
        }

et de donner le résultat pour une analyse ultérieure.

Attention, certaines erreurs sont normales dans les traitements, tout ne méritant pas d'être parfaitement traité (mais qui le sera un jour c'est sûr !)
Il faut donc se mettre en mode production pour ne pas afficher toutes les erreurs (Administration > configuration globale > onglet environnement > paramètre environnement > production)

Bonne soirée et désolé du retard, suis un peu en vacances ;-)

#1628 Re : Bugs » Analyse des retours » 18-02-2015 10:11:34

Bonjour Manou
C est un nouveau sujet il faudrait ouvrir un nouveau fil dans le forum support général.
Merci d y préciser également pour cette question ton type d hébergement.

Bonne journée
Arnaud

#1629 Re : Support général » Blocage d'envoi des emails » 19-02-2015 19:46:23

Bonjour cc17000,

Et bienvenue dans le forum du support.

La première chose à faire est de créer une liste de test ! Je ne le répéterai jamais assez ! Une liste avec une dizaine de mails. Comme tout script ou logiciel, phpmynewsletter doit se roder à votre environnement et vous aurez toujours un petit tunning à faire.

Ensuite, il me faudrait quelques renseignements supplémentaires :
- quel hébergeur ? (Si payant, merci de préciser la formule d'hébergement)
- quel environnement ? (version de php, une copie du phpinfo serait idéale (cacher les infos sensibles), version de mysql, version du serveur (apache, nginx,IIS...))
- combien de mails à envoyer ?
- une liste d'essai a été testée ? Si oui, merci de poser ici le log pour que l'on en discute (on cache un peu les mails, SVP)
- L'envoi qui bug est-il en live (ça a l'air d'être le cas, vu la barre de progression qui stoppe) ou planifié ?

Merci d'avance,

Arnaud

#1630 Re : Ask, report or enjoy... » suggestion & Questions » 16-02-2015 10:49:59

Hello pouyan.kh,

I read all the scripts and your log.
I think you've got a problem with mysql  who is very slow, that, or your smtp connection...
Because there is only one loop.

The process you have :
- i take a mail
- i send a mail
- i update DB
Time is going and search for the next mail to send. The first is updated as send, so phpmynewsletter takes it again to send.

In my log, a mail takes only 0.10 to 1.15 to go away :

============================================================
04 Oct 2014
Started at 17:07:34
N° 	 Date 		 Time 		 Status 		 Recipient  
------------------------------------------------------------
1	17:07:34	 0.149		 OK 	*****@yahoo.fr
2	17:07:37	 0.124		 OK 	*****@gmail.com
3	17:07:41	 0.121		 OK 	*****@*****.info
4	17:07:44	 0.105		 OK 	*****@hotmail.com
5	17:07:48	 0.122		 OK 	*****@gmx.com
6	17:07:51	 0.109		 OK 	*****@gmail.com
------------------------------------------------------------
Finished at 17:07:52
============================================================
Taille de la mémoire swap           : 0
Nombre de pages mémoires utilisées  : 0
Temps utilisateur (en secondes)     : 0
Temps utilisateur (en microsecondes): 16001

Yours mails are send with 3 to 4 seconds, it's very long !

============================================================
14 Feb 2015
Started at 22:18:25
N° 	 Date 		 Time 		 Status 		 Recipient  
------------------------------------------------------------
1	22:18:39	 4.062		 OK 	**********@gmail.com
2	22:18:43	 3.625		 OK 	**********@yahoo.com
3	22:18:46	 3.718		 OK 	**********@gmail.com
------------------------------------------------------------
Finished at 22:18:46
============================================================
1	22:18:53	 4.078		 OK 	**********@gmail.com
2	22:18:57	 3.640		 OK 	**********@yahoo.com
3	22:19:00	 3.765		 OK 	**********@gmail.com
------------------------------------------------------------
Finished at 22:19:00
============================================================
------------------------------------------------------------
Finished at 22:19:05
============================================================
------------------------------------------------------------
Finished at 22:19:08
============================================================

And it writes 4 time the script finished, so you've got bug mysql or smtp.

#1632 Re : Ask, report or enjoy... » suggestion & Questions » 16-02-2015 10:49:59

I need more info could you send me the last log to arnaud at phpmynewsletter dot com please.
Did you create a short list to try it ?

#1634 Re : Ask, report or enjoy... » suggestion & Questions » 16-02-2015 10:49:59

Hello pouyan.kh

Now i understand !
You want to write a mail for the manager and use his account to send it.
OK.
3 ways :

  1. - send it with php.... Forget, not a good solution

  2. - your smtp doesn't need an account, it works (you can try it with an other list you'll create in the manager : add a list, prepare it with your mail(sender) and add a mail in the list, write, and send).

  3. - your smtp needs an account : another 2 ways :

    • the smtp must be the account of the sender : the script doesn't manage it today

    • the smtp needs an account who can different of the manager account : you can put your account and send with the mail of your manager

So, this is my suggestion, and i think it will works, because to send a mail, in 98% of the time, the account for smtp doesn't need to be the account of the mail :
- create a new list (test list)
- add a mail for sender (whatever you want, but different of account smtp)
- add a mail for receiver (your mail for example)
- use your smtp account
- send, and say us...

For the "en cours d'envoi" :
- go to include/mailq.php
- line 20 and 47, change

echo '<a>pas de mail en cours d\'envoi</a>';

to anything else

And line 45 :

echo '<a href="?page=manager_mailq&list_id='.$list_id.'&token='.$_SESSION['_token'].'" title="see and manage mails in process" class="tooltip">'.$mails_en_cours.' mails in process</a>';

change the title and the link.

"Tester ces paramètres" :
go to global conf, bounce, and at the bottom of the page, you will have your parameters to manage bounce.
So yes, bounce go to your mailbox (the one of your manager) and read all the mail to find mails in error.

(I have to change the results, because as you said, the manager pass, like others, doesn't need to be show...)

Hope i answered !

Have a nice day.

Plz, next week, i have 5 days for holidays, i'll try to give answers, but from my phone...

Arnaud

#1635 Re : Ask, report or enjoy... » suggestion & Questions » 16-02-2015 10:49:59

Hello pouyan.kh, happy to meet you, and welcome.

I'll try to give you the best answers (hope you'll understand my poor english  big_smile )

1 - If you manage your own server, so you can let 50 send mail for each curly (good word plz ?), so it will give 50 mails every 10 seconds. You'll need 3000/50*10=600 seconds ! Is it OK for you ?

2- I don't really understand the question, could you help me ?

3- after sending mails, you ll be redirect on a page, the tracking page, who will manage the mails who are not delivered. Look at your mailq (top left of the manager, it will say you 4 or 10 or n mails are waiting for send "en cours d'envoi", 3rd line)

Suggestions : no, this is not a bug, yes it's intentionnal. If you want to obfuscar the password, you'll have to deactivate the smtp test... Else it will be shown when you'll click on "Tester ces paramètres" (test these settings)

You propose to translate it in persian ! Oh yes, i would so happy !

For the next version, we'll work on a big translation, mutli-language, and persian is welcome of course ! Phpmynewsletter is utf-8 encoded, so no problem !

Many Thanks, really, in advance !

Regards,
Arnaud (and as i said in an other topic : excuse me for my so poooooooooooor english !)

#1636 Re : Retour d'expérience » Vos environnements, support des fonctionnalités de PhpMyNewsLetter » 19-06-2015 09:56:37

Bonjour Thibault,

C'est très aimable à toi de l'avoir fait remarquer !
On va avancer, oui, et bonne nouvelle, un nouveau développeur se joint au projet (et un sacré développeur  wink  wink )
Ça laisse environ 8 mois...

Bien cordialement aussi,
Arnaud

#1638 Re : Ask, report or enjoy... » Fatal error: Call to undefined function translate() in » 24-01-2016 15:43:21

Hello Rene, happy to see you back,

I'm working on the newer version, the 2.0.4. I need 2 month, i hope april 2015.
I want it to be multilanguage, yes, and to have, at first, all in english, would be a good thing.
A file with all the sentence, words, to translate will be available for all, to translate in other language...
I hope you understand me  big_smile

Have a nice day,
Arnaud

#1639 Re : Support général » Exporter les adresses mails » 11-02-2015 19:38:34

Bonjour Eon,

Oui ! C'est même recommandé ! Il suffit tout d'abord de sélectionner la liste dans la "liste des listes", donc surlignée en vert, puis dans le menu gauche cliquer sur "Export des abonnés".

Tout simplement  wink

#1641 Re : Support général » Quelques erreurs et taches planifiées » 11-02-2015 09:15:14

Les images sont stockées normalement dans le répertoire tracking_graph, c'est donc autre chose qui ne va pas, à voir dans la page include/tracking.php, peut être un problème avec le

<img src="<?php echo get_relative_path($tmpfname); ?>">

à la ligne 81.

Pour les autres points, oui, je suis d'accord, et ajouter une phase de purge ! Bien vu !

#1643 Re : Vos requêtes » [Résolu] Extracteur d'adresse email » 13-09-2015 20:38:44

Re-

Alors... Très intéressant, mais questions et remarques :
- De quel texte extrait on ces mails ?
- il y a un test sur les doublons dans les imports de liste et dans les ajouts de mail via opt-in, donc pourquoi refaire un contrôle des doublons ?
- Attention : les forms, c'est bien de les nommer de manière unique dans le script global, exemple : nom1, c'est pas...Enfin, tu vois ce que je veux dire  big_smile
- Remarque super importante : toutes les pages sont normalement encodées en utf-8. Je ne code pas les é, è etc en D& eacute; etc... Merci.

Sinon, je crois que c'est vraiment utile, oui c'est clair, mais devrait plutôt se rapprocher d'un process d'import global de mails dans un texte, dans une liste qui serait en fait une extraction d'une base ou autre pour enrichir une liste déjà existante... Autrement dit, quelque soit le modèle des données importées, l'import se fait quand même, et cela rejoint le post : http://www.phpmynewsletter.com/forum/vi … php?id=115

#1644 Re : Support général » Quelques erreurs et taches planifiées » 11-02-2015 09:15:14

phpSources a écrit :

Merci pour toute tes réponses
Je trouve ta manière de coder super clair

Merci !! cool  Je ne veux pas que l'on se perde avec des frameworks et comme Rasmus les aime... Je plussoie !

phpSources a écrit :

Je ne comprend pas dans quel environnement tu écris cette requête.
pourrais-tu détailler cette partie stp, les prérequis ?

- une tâche cron ira s'inscrire dans l'environnement du compte utilisateur php sur linux (ex : www-data), attention aux prérequis demandés !

L'environnement d'un utilisateur Linux... Hmmm, c'est en fait tous les droits que cet utilisateur a, dont il dispose. C'est son environnement, son "Home"... Ce sera donc sa crontab.

phpSources a écrit :

J'ai bien GD d'installé mais j'ai cette erreur sur le tracking graph
JpGraph Error: 25128 The function imageantialias() is not available in your PHP installation. Use the GD version that comes with PHP and not the standalone version.

Il faut revoir l'installation de php, et mettre à jour la bibliothèque GDlib.

phpSources a écrit :

Ou se gère dans le code la fréquence pour un envoie classique ?
j'aimerais par exemple pouvoir distribuer 100 mails de l'heure.

Il y a 2 paramètres : le nombre d'envoi par boucles (paramètrable dans la console) et le rafraichissement qui est dans include/compose.php
Ce second paramètre sera intégré dans la future version.

phpSources a écrit :

tu es brutal ici wink

$cnx->query("DELETE FROM $table_email WHERE email='$addr' AND list_id='$list_id'")

shouttéé les désabo tongue
tu les aime pas ?

Et ? Je ne comprends pas ! On se désabonne, on se désabonne, la loi est claire  big_smile

#1645 Re : Support général » Quelques erreurs et taches planifiées » 11-02-2015 09:15:14

Bonjour et bienvenue sur ce forum d'entraide.

Je pense, au vu du pseudo, avoir affaire à quelqu'un qui n'est pas ignorant du php ;-) Alors merci pour les compliments.

Vu qu'il y a les tâches planifiées et vu ce que je lis, nous sommes en linux, sur un dédié, en version 2.0.3.

Les erreurs s'affichent, car dans le paramètre développement a été activé. Celui ci permet d'afficher toutes les erreurs (plus ou moins grosses) dans le cadre d'un développement personnalisé de l'outil.
C'est du debbugage !

Les erreurs :

index.php?page=manager_mailq
Notice: Undefined index: list_id in /var/www/site.com/htdocs/admin251/include/manager_mailq.php on line 72
Dans :

<td><a href="?page=manager_mailq&action=delete_id_from_mailq&list_id='.$item['list_id'].'&token='.$token.'&id_mailq='.$item['id'].'" class="tooltip" title="Supprimer ce mail, ID : '.$item['id'].'" onclick="return confirm(\'Supprimer ce mail de la file des envois ?\')"><input type="image" src="css/icn_trash.png"></a></td>

Il faudrait remplacer $item['list_id'] par $list_id

index.php?page=archives
Fatal error: Call to undefined function info_msg() in /var/www/site.com/htdocs/admin251/include/archives.php on line 27

echo info_msg(translate("NO_ARCHIVE"));

A remplacer par

echo (translate("NO_ARCHIVE"));

online.php
Notice: Undefined variable: msg_id in /var/www/site.com/htdocs/admin251/online.php on line 28

$unsubLink = "<br /><div align='center' style='padding-top:10px;font-size:10pt;font-family:arial,helvetica,sans-serif;padding-bottom:10px;color:#878e83;'><hr noshade='' color='#D4D4D4' width='90%' size='1'>Je ne souhaite plus recevoir la newsletter : <a href='" . $row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?i=$msg_id&list_id=$list_id&op=leave&email_addr=$e&h=$h' style='' target='_blank'>d&eacute;sinscription / unsubscribe</a><br /><a href='http://www.phpmynewsletter.com/' style='' target='_blank'>Phpmynewsletter 2.0</a></div></body></html>";

A remplacer par :

$unsubLink = "<br /><div align='center' style='padding-top:10px;font-size:10pt;font-family:arial,helvetica,sans-serif;padding-bottom:10px;color:#878e83;'><hr noshade='' color='#D4D4D4' width='90%' size='1'>Je ne souhaite plus recevoir la newsletter : <a href='" . $row_config_globale['base_url'] . $row_config_globale['path'] . "subscription.php?i=$i&list_id=$l&op=leave&email_addr=$e&h=$h' style='' target='_blank'>d&eacute;sinscription / unsubscribe</a><br /><a href='http://www.phpmynewsletter.com/' style='' target='_blank'>Phpmynewsletter 2.0</a></div></body></html>";

Concernant le sujet des tâches planifiées :

Il s'agit de planifier un envoi de newsletter à une date et une heure précise :

Objectifs :
- s'assurer du départ à la bonne heure (événement ou autre)
- envoyer de manière douce les mails (gestion respectueuse des hotmail, gmail, yahoo mail et compagnies autres)
- éteindre son ordinateur et ne pas regarder un envoi se faire
- éviter les erreurs d'envoi dus à une éventuelle coupure électrique du PC qui envoie les mails (ou réseau !)

Fonctionnement :
- au lieu d'appuyer sur envoyer, on clique sur planifier cet envoi.
- une tâche cron ira s'inscrire dans l'environnement du compte utilisateur php sur linux (ex : www-data), attention aux prérequis demandés !
- cette tâche sera exécutée aux date et heure prévus, exemple ici : le 7 février à 16:14

16 14 7 2 * /usr/bin/php /var/www/site.com/htdocs/admin251/include/task.php pmnl2_StdWYR

- une fois la tâche executée, elle est supprimée de la crontab.

Il est envoyé dans cette tâche 1 mail par seconde, donc 10000 mails seront envoyés en un peu plus de 3 heures.

Je déconseille de changer la cadence de cet envoi... Sauf à encore le ralentir !

Un membre m'a fait remonter son cas qui est d'envoyer 85000 mails par mois, de façon planifiée, 1 envoi par mois, et tout se passe bien.

Bien sur, tout est paramétrable, et les futures versions seront améliorées pour gérer les paramètres dans la console.

Ai-je répondu aux questions ?

Les erreurs signalées sont traitées et les fichiers sont à jour sur le dépôt github.
(https://github.com/Arnaud69/phpmynewsle … 51196b6569)

#1648 Re : Bugs » Could not instantiate mail function » 06-02-2015 14:19:51

Alors effectivement c'est tout à fait possible.
Le cas présenté était typiquement un cas windows avec php.ini non paramétré pour un envoi.
Si tu veux envoyer plus de 500 mails, il faudra alors faire un rapide calcul, sachant que par défaut on envoie 50 mails toutes les 10 secondes.
Il te faudra donc dans ton cas envoyer en 3600 secondes 500 mails maxi, sachant que l'on a 360 boucles, donc 1 mail à chaque boucle... Je sais, c'est ballaud, mais c'est comme ça...
1000 mails : 10000 secondes (3 heures...) peut être envisager de basculer sur un VPS ou un dédié...
(paramétrage dans configuration générale >> envois >> NOMBRE DE MESSAGES EXPÉDIÉS À CHAQUE BOUCLE D'ENVOI)

Bonne journée

Arnaud

#1649 Re : Bugs » Could not instantiate mail function » 06-02-2015 14:19:51

Bonjour eon  wink  et bienvenue sur le forum.

En fait, ce n'est pas un bug (je déplacerai le sujet), mais une question liée au support.

Je suis convaincu que tu utilises phpmynewsletter en local (donc sur un localhost), que tu veux envoyer des mails depuis ton localhost.
En fait, cette erreur survient quand le php.ini n'est pas renseigné dans sa clause SMTP.
Il faudra donc ouvrir ce fichier, et mettre à jour le SMTP, smtp_port et sendmail_from (par la même occasion).
Je pense également que ton localhost est un windows.

Il s'agit donc en fait de mettre à jour les paramètres de connexion qui permettront à PhpMailer de générer et gérer l'envoi des mails de ta liste.

Merci de nous donner un retour.

Arnaud

#1650 Re : Ask, report or enjoy... » Fatal error: Call to undefined function translate() in » 24-01-2016 15:43:21

Hello Rene,

The next version will have more trnaslation.
I had to rewrite the whole script, i did it (dirty so) in french.
I will have to prepare a big file for translation, it will start in english and i will need translation.
I will post when it will be ready to translate for and by the community.
Thx in advance,
Arnaud

PS : it's a big (but wonderful) work, i'm alone today...

Pied de page des forums

Propulsé par FluxBB