Support et annonces PhpMyNewsLetter.
Vous n'êtes pas identifié(e).
Pages :: 1
Bonjour,
J'ai fais la mise à jour vers la 2.0.4. Hébergement mutualisé OVH linux, PHP 5.6 .
La procédure automatique ne fonctionnant pas j'ai fait la mise à jour à la main.
J'ai aussi mis à jour la base de données avec les requêtes récupérés dans le script update.php
J'ai un petit soucis avec les "Abonnés en attente de confirmation" :
Le bouton "Supprimer cette adresse électronique" qui ne fonctionne pas, cela met une page blanche.
Par contre je peux forcer la confirmation de l'adresse puis la supprimer dans "Supprimer un abonné" sans problème.
Petite question en passant : les adresses dans "Gestion des adresses mails (abonnés) en erreur" ce vident après un certain temps ? Je ne vois pas d'option pour les retirer, juste "Restaurer".
Merci
PS : voici les commandes SQL telles que je les ai envoyés sur le serveur :
ALTER TABLE `pmn2_config`
CHANGE `sending_method` `sending_method` ENUM( 'smtp','lbsmtp','php_mail','php_mail_infomaniak','smtp_gmail_tls',
'smtp_gmail_ssl','smtp_mutu_ovh','smtp_mutu_1and1','smtp_mutu_gandi','smtp_mutu_online','smtp_mutu_infomaniak' );
ALTER TABLE `pmn2_config` ADD `smtp_port` VARCHAR(5) NOT NULL AFTER `smtp_host`;
ALTER TABLE `pmn2_config`
ADD `table_email_deleted` VARCHAR( 255 ) NOT NULL DEFAULT '',
ADD `table_smtp` varchar(255) NOT NULL DEFAULT '',
ADD `alert_sub` ENUM( '0', '1' ) NOT NULL default '1',
ADD `active_tracking` enum('0','1') NOT NULL DEFAULT '1';
UPDATE `pmn2_config` SET table_email_deleted='pmn2_email_deleted',table_smtp='pmn2_smtp';
ALTER TABLE `pmn2_email`
ADD `campaign_id` INT(7) DEFAULT NULL,
ADD KEY `categorie` (`categorie`),
ADD KEY `campaign_id` (`campaign_id`);
CREATE TABLE IF NOT EXISTS `pmn2_email_deleted` (
`id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`email` varchar(255) NOT NULL DEFAULT '',
`list_id` int(5) unsigned NOT NULL DEFAULT '0',
`hash` varchar(40) NOT NULL DEFAULT '',
`error` enum('N','Y') NOT NULL DEFAULT 'N',
`status` varchar(255) DEFAULT NULL,
`type` enum('','autoreply','blocked','generic','soft','hard','temporary','unsub','by_admin') NOT NULL,
`categorie` varchar(255) NOT NULL,
`short_desc` text NOT NULL,
`long_desc` text NOT NULL,
`campaign_id` int(7) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`id`),
UNIQUE KEY `unique_email_by_list` (`email`,`list_id`),
KEY `hash` (`hash`),
KEY `error` (`error`),
KEY `status` (`status`),
KEY `type` (`type`),
KEY `categorie` (`categorie`),
KEY `campaign_id` (`campaign_id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
CREATE TABLE IF NOT EXISTS `pmn2_smtp` (
`smtp_id` int(7) NOT NULL AUTO_INCREMENT,
`smtp_name` text NOT NULL,
`smtp_url` varchar(255) NOT NULL,
`smtp_user` text NOT NULL,
`smtp_pass` text NOT NULL,
`smtp_port` int(5) unsigned NOT NULL,
`smtp_secure` text NOT NULL,
`smtp_limite` int(4) unsigned NOT NULL,
`smtp_used` int(4) unsigned NOT NULL,
`smtp_date_create` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`smtp_date_update` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`id_use` int(6) unsigned NOT NULL DEFAULT '0',
PRIMARY KEY (`smtp_id`),
UNIQUE KEY `smtp_url` (`smtp_url`,`smtp_port`),
KEY `smtp_used` (`smtp_used`),
KEY `smtp_limite` (`smtp_limite`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
ALTER TABLE `pmn2_track`
ADD `browser` varchar(150) NOT NULL,
ADD `version` varchar(150) NOT NULL,
ADD `platform` varchar(255) NOT NULL,
ADD `useragent` text NOT NULL,
ADD `devicetype` varchar(10) NOT NULL,
ADD KEY `ip` (`ip`),
ADD KEY `browser` (`browser`),
ADD KEY `version` (`version`),
ADD KEY `platform` (`platform`),
ADD KEY `devicetype` (`devicetype`);
ALTER TABLE `pmn2_track_links` CHANGE `cpt` `cpt` INT( 7 ) UNSIGNED NOT NULL DEFAULT '0';
Hors ligne
Bonjour RaphAstronome,
Pour la mise à jour des tables, c'est OK.
Je vois que tu as contourné le problème, mais ça ne répond pas à la question !
Page blanche...
Je regarde de suite et te tiens informé.
Arnaud
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
N'importe quoi Arnaud !
Désolé, en fait, c'était une écriture trop rapide...
Bref, après la ligne 246 dans le fichier include/lib/pmn_fonctions.php,
Tu vas ajouter :
function delete_subscriber_tmp($cnx, $table_email, $list_id, $del_addr, $table_email_deleted, $motif) {
$CPTID = $cnx->query("SELECT count(*) AS CPTID
FROM $table_email
WHERE list_id = ".$list_id."
AND email = ".escape_string($cnx,$del_addr))->fetch();
if ( $CPTID['CPTID'] > 0 ) {
if (!$cnx->query("INSERT IGNORE INTO $table_email_deleted (email, list_id, hash)
SELECT email, list_id, hash
FROM $table_email
WHERE email=".escape_string($cnx,$del_addr)."
AND list_id=".$list_id)){
return false;
} else {
$cnx->query("UPDATE $table_email_deleted
SET error='Y', type='".($motif!=''?$motif:'unsub')."'
WHERE email=".escape_string($cnx,$del_addr)."
AND list_id=".$list_id);
if (!$cnx->query("DELETE FROM $table_email
WHERE list_id = ".$list_id."
AND email=".escape_string($cnx,$del_addr))) {
return false;
} else {
return true;
}
}
} else {
return 5;
}
}
Et dans le fichier op.php, ligne 100, tu vas remplacer :
$deleted_temp = delete_subscriber($cnx,$row_config_globale['table_temp'],$list_id,$del_tmpaddr,$row_config_globale['table_email_deleted'],'by_admin');
par
$deleted_temp = delete_subscriber_tmp($cnx,$row_config_globale['table_temp'],$list_id,$del_tmpaddr,$row_config_globale['table_email_deleted'],'by_admin');
Toutes mes confuses, je publie de suite le correctif, et merci pour le report de bug
Bonne journée
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
Le problème semble similaire.
J'ai mis mon hébergement en mode "développement".
Avec le patch j'obtiens :
Fatal error: Call to undefined function delete_subscriber_tmp() in /(dossier)/op.php on line 126
Sans l'erreur est tout autre et semble être dû à un soucis de SQL :
Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[42S22]: Column not found: 1054 Unknown column 'id' in 'field list'' in /(dossier)/include/db/PDOExtended/PDOExtended.php:88 Stack trace: #0 [internal function]: PDO->query('SELECT count(id...') #1 /(dossier)/include/db/PDOExtended/PDOExtended.php(88): call_user_func_array(Array, Array) #2 /(dossier)/include/lib/pmn_fonctions.php(222): PDOExtended->__call('query', Array) #3 /(dossier)/include/lib/pmn_fonctions.php(222): PDOExtended->query('SELECT count(id...') #4 /(dossier)/op.php(126): delete_subscriber(Object(PDOExtended), 'pmn2_temp', '1', '(mail_à_suppr)....', 'pmn2_email_dele...', 'by_admin') #5 /(dossier)/index.php(28): include('/home/aafcwqui/...') #6 {main} thrown in /(dossier)/include/db/PDOExtended/PDOExtended.php on line 88
EDIT : oups, j'ai pas tout fait !
EDIT 2 : ok, en fait cela fonctionne (je garde mon message d'origine pour référance mais c'est ok).
Juste un détail : dans op.php la ligne 100 est totalement autre :
$subscriber_op_msg_a = "<h4 class='alert_error'>".tr("ERROR_ADDING_SUBSCRIBER"," <b>$add_addr</b>").".</h4>";
C'est la ligne 126 qu'il m'a fallu modifier.
Dernière modification par RaphAstronome (28-12-2016 15:20:09)
Hors ligne
Dernier détail : lorsque l'on rédige un message et que l'on clique sur "Réinitialiser" on obtient une page avec l'entête et le menu normal mais avec marqué "oups !".
J'obtiens aussi un petit warning dans l'acceuil "Chiffres clé, toutes listes confondues" :
Warning: reset() expects parameter 1 to be array, null given in /(dossier)/include/listes.php on line 251
(les graphiques fonctionnent sans problème)
Même genre de chose dans "Tracking, suivi des envois" :
Warning: Division by zero in /home/aafcwqui/www/newsl/include/tracking.php on line 231
Warning: Division by zero in /home/aafcwqui/www/newsl/include/tracking.php on line 338
(note : le tracking est activé et ce même en 2.0.3 où j'avais retouché le code)
Sinon comment fait t'on pour vider la liste des adresses mails (abonnés) en erreur ?
Hors ligne
Est-ce que tu pourrais télécharger la dernière version (d'hier) et l'installer via ftp par dessus celle que tu as stp ?
Le reset listes ligne 251 est corrigé depuis quelques jours.
Merci d'un retour
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
Sinon : la liste des mails en erreur n'est pas vidable, au motif suivant :
Elle permet de constituer une base de connaissance qui permet d'éviter d'ajouter les mails qui sont en erreur (en gros, permet d'éviter les inscriptions pouvant être générées par des robots)...
Ceci dit : je pourrais très bien ajouter une option d'affichage (ou non) de la liste. Et cette liste permet des corrections... Bien pratique très souvent !
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
J'ai mis en place la dernière version mais il est apparu une erreur bloquante :
Parse error: syntax error, unexpected '>' in /home/aafcwqui/www/newsl/include/listes.php on line 99
La ligne :
if (count($results_stat_platform)&&$total>0 >0) {
(j'ai retiré me ">0" en trop)
Sinon j'ai toujours "Warning: reset() expects parameter 1 to be array, null given in /home/aafcwqui/www/newsl/include/listes.php on line 251" les autres sont partis.
Autre Warning en exportant la liste des abonnés ajouté au début du fichier récupéré :
<br />
<b>Warning</b>: Missing argument 4 for get_newsletter_total_subscribers(), called in /home/aafcwqui/www/newsl/export.php on line 17 and defined in <b>/home/aafcwqui/www/newsl/include/lib/pmn_fonctions.php</b> on line <b>434</b><br />
Hors ligne
Tu peux supprimer la ligne 251 directement, et je reconnais l'erreur...
Je m'occupe de la dernière après
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
modifie la ligne 17 de export.php
par :
$list_total_subscribers=get_newsletter_total_subscribers($cnx,$row_config_globale['table_email'],$list_id,-1);
Le -1 à la fin, c'est pour exporter toute la liste.
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
La ligne :
if (count($results_stat_platform)&&$total>0 >0) {
à corriger par :
if (count($results_stat_platform) >0 &&$total>0 ) {
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
Le zip est à jour, MERCI
Je prends le temps de créer un outil pour tous, de niveau professionnel, mais simple !
Il n'est pas encore parfait, soyez indulgents, ça vient...
Si vous avez des questions, n'hésitez pas ! Mais soyez précis pour une réponse plus rapide
Hors ligne
Pages :: 1