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 !

#1 12-07-2017 15:20:14

olivierch
Membre

[Résolu] Erreur lors de l'installation

Bonjour,

Je suis en train de mettre en place la dernière version 2.0.4 et je bloque sur une erreur malgré les conseils que vous avez donnés sur le forum.
Voici mon erreur :

Fatal error: Uncaught exception 'StmtException' with message 'SQLSTATE[42000]: Syntax error or access violation: 1067 Invalid default value for 'date'' in /flex/storage/density-productions.com/site/www/newsletter/gestion/include/db/PDOExtended/PDOExtended.php:193 Stack trace: #0 /flex/storage/density-productions.com/site/www/newsletter/gestion/install.php(445): PDOExtended->Sql('CREATE TABLE IF...') #1 {main} thrown in /flex/storage/density-productions.com/site/www/newsletter/gestion/include/db/PDOExtended/PDOExtended.php on line 193

J'ai suivi les solutions suivantes :
https://www.phpmynewsletter.com/forum/t … age-1.html
https://www.phpmynewsletter.com/forum/t … age-1.html

Je sèche !  tongue

Hébergement online.net en mutualisé, la base existe, sauf les tables.

Dans l'attente, merci.
Olivier

Hors ligne

#2 12-07-2017 16:12:31

Arnaud
Administrateur

Re : [Résolu] Erreur lors de l'installation

Bonjour et bienvenue !
Le problème vient du caractère strict de la config mysql, qui n'accepte pas les champs date avec pour valeur defaut un NULL.
On a du mutualisé, online, je connais, mais pas en mutualisé.
La solution normale est de mettre le sql_mode à rien :
Dans le fichier _loader.php, avant installation, ajouter en dernière ligne de code :

$cnx->query( "SET sql_mode = '';" );

Et un petit retour pour valider le correctif, merci d'avance !

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  wink

Hors ligne

#3 12-07-2017 19:03:32

olivierch
Membre

Re : [Résolu] Erreur lors de l'installation

Bonsoir Arnaud,

Effectivement suite à un de vos commentaire (comme cité dans mon message d'origine) c'est ce que j'ai fait, mais visiblement rien n'y fait.

Aucune table n'a encore été crée, puis-je relancer le script d'install (car c'est ce que je fais et rien...) ou dois-je tout supprimer du serveur fpt et re donwloader les fichiers ?

Merci.

Olivier

Hors ligne

#4 12-07-2017 20:28:47

Arnaud
Administrateur

Re : [Résolu] Erreur lors de l'installation

Ah !
Alors Online n autorise pas cette requête...
Je vais voir mettre au point une correction du script.
Il sera prêt demain.


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  wink

Hors ligne

#5 13-07-2017 06:18:05

olivierch
Membre

Re : [Résolu] Erreur lors de l'installation

Merci pour cette recherche.
Mais ce que je ne comprends c'est qu'il y a visiblement d'autre utilisateurs de Phpmynewsletter, qui sont sur online...et ça fonctionne pour eux.

Hors ligne

#6 13-07-2017 06:31:05

Arnaud
Administrateur

Re : [Résolu] Erreur lors de l'installation

Bonjour,

Tout dépend de tellement de facteurs !
Il faudrait connaitre l'environnement, la version de mysql, ses limites en hébergement, est-ce que ce sont les mêmes hébergements ?
Et je ne suis pas au courant...

Bizarrement quand les gens ont un problème avec phpmynewsletter, il vont sur les forums OVH, online, etc,... Mais rarement  ici ! Ce qui est dommage car non constructif... Il est parfois plus rigole de s'adresser à une communauté plutot qu'au créateur du logiciel... Bizarre...
Mais on va résoudre ce souci... Rapidement wink


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  wink

Hors ligne

#7 13-07-2017 09:32:54

Arnaud
Administrateur

Re : [Résolu] Erreur lors de l'installation

Autant pour moi, _loader.php n'est pas appelé à l'installation ! big_smile
Dans le fichier install.php, tu cherches ligne 436 :

$sql = 'CREATE TABLE IF NOT EXISTS `' . $table_prefix . 'archives` (
                                `id` int(7) UNSIGNED NOT NULL DEFAULT  "0",
                                `date` datetime NOT NULL DEFAULT "0000-00-00 00:00:00",
                                `type` TEXT NOT NULL,
                                `subject` TEXT NOT NULL,
                                `message` TEXT NOT NULL,
                                `list_id` INT(7) NOT NULL DEFAULT "0",
                                UNIQUE KEY `id_list_mail` (`id`,`list_id`)
                                ) ENGINE='.$storage_engine.' DEFAULT CHARSET=utf8;';

et juste avant, tu ajoutes :

$cnx->query( "SET sql_mode = '';" );

pour avoir :

$cnx->query( "SET sql_mode = '';" );
$sql = 'CREATE TABLE IF NOT EXISTS `' . $table_prefix . 'archives` (
                                `id` int(7) UNSIGNED NOT NULL DEFAULT  "0",
                                `date` datetime NOT NULL DEFAULT "0000-00-00 00:00:00",
                                `type` TEXT NOT NULL,
                                `subject` TEXT NOT NULL,
                                `message` TEXT NOT NULL,
                                `list_id` INT(7) NOT NULL DEFAULT "0",
                                UNIQUE KEY `id_list_mail` (`id`,`list_id`)
                                ) ENGINE='.$storage_engine.' DEFAULT CHARSET=utf8;';

Le pointeur $cnx sera alors initialisé avec le bon sql_mode.
Toutefois, tu laisseras bien dans _loader la ligne ajoutée précédemment.


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  wink

Hors ligne

#8 13-07-2017 09:43:37

olivierch
Membre

Re : [Résolu] Erreur lors de l'installation

Bingo !

Ca fonctionne parfaitement.

Merci pour cette réponse extrêmement rapide.

Bonne journée.

Olivier

Hors ligne

#9 13-07-2017 09:45:52

Arnaud
Administrateur

Re : [Résolu] Erreur lors de l'installation

De rien, bonne journée, et bon usage !

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  wink

Hors ligne

Pied de page des forums

Propulsé par FluxBB