[Résolu] non enregistrements des champs "nom" et "email" des forums

Bonjour,

je ne sais pas si vous pourrez m’éclairer, mais je vous explique tout de même mon problème :wink:

Sur tout nos CMS SPIP :
depuis qq temps (depuis ~25 nov 2023), les champs « nom » et « email » des formulaires de forum des « visiteurs non logués » ne s’enregistrent pas dans les BD

Il n’y a pas d’erreurs php ou autres dans les logs des SPIP…

Les sites sont à jour (mais j’ai le même problème qd je teste avec des versions SPIP antérieures au 25 nov 23…)
cela fait plusieurs jours que je cherche si ça viendrait d’une mise à jour du serveur de nov 2023 (mariaDB ou autre) sans succès

Je fais les tests sur cet article : on constate dès l’envoi du commentaire que les champs « nom » et « email » ne sont pas enregistrés :
https://salesmomes.com/test/spip.php?article1
(par contre, aucun problème lors de publication d’articles, de rubriques ou autres, tous les champs sont bien enregistrés. Celà ne concerne que le formulaire de forums/commentaires)


Le seul Log SPIP à l’envoi du commentaire :
2024-03-01 12:28:16 78.194.59.68 (pid 23402) :Pub:!INFO: update thread id_thread=1 avec array (
‹ id_objet › => ‹ 1 ›,
‹ objet › => ‹ article ›,
)

Auriez-vous une piste ?
Merci !
Thom


Voici ce que je vois dans les logs du serveur :

Erreur PHP 01/03/2024 12H28’16’'dvs88325 172.30.155.53172.17.0.1 - 01/Mar/2024:11:28:16 +0000 « GET /test/spip.php » 200
cc4b2960-d7be-11ee-9866-0ab16ba63dd6

Erreur PHP 01/03/2024 12H28’16’'dvs88325 172.30.155.53172.17.0.1 - 01/Mar/2024:11:28:16 +0000 « POST /test/spip.php » 302
cc2578f8-d7be-11ee-9866-0ab16ba63dd6

Info user-level 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 docker-php[5953]: 172.17.0.1 - 01/Mar/2024:11:28:16 +0000 « POST /test/spip.php » 302 cc25a008-d7be-11ee-9866-0ab16ba63dd6

Info Accès 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 vhost-log-access 78.194.59.68 salesmomes.com - [01/Mar/2024:11:28:16 +0000] « GET /test/spip.php?article1 HTTP/1.1 » 200 4241 « https://salesmomes.com/test/spip.php?article1&var_mode=calcul » « Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 » cc4b5070-d7be-11ee-9866-0ab16ba63dd6

Info user-level 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 docker-php[5953]: 172.17.0.1 - 01/Mar/2024:11:28:16 +0000 « GET /it/spip.php » 200 cc6233d1-d7be-11ee-9866-0ab16ba63dd6

Info Accès 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 vhost-log-access 78.194.59.68 salesmomes.com - [01/Mar/2024:11:28:16 +0000] « GET /test/local/cache-css/cssdyn-css_barre_outils_icones_css-b2ac2991.css?1709292431 HTTP/1.1 » 200 748 « https://salesmomes.com/test/spip.php?article1 » « Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 » cc4ed2e0-d7be-11ee-9866-0ab16ba63dd6

Info Accès 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 vhost-log-access 78.194.59.68 salesmomes.com - [01/Mar/2024:11:28:16 +0000] « POST /test/spip.php?article1&id_article=1&id_objet=1 HTTP/1.1 » 302 419 « https://salesmomes.com/test/spip.php?article1&var_mode=calcul » « Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 » cc25ee20-d7be-11ee-9866-0ab16ba63dd6

Info user-level 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 docker-php[5953]: 172.17.0.1 - 01/Mar/2024:11:28:16 +0000 « GET /test/spip.php » 200 cc4b7780-d7be-11ee-9866-0ab16ba63dd6

Info Accès 01/03/2024 12H28’16’'dvs88325 172.30.155.53dvs88325 vhost-log-access 78.194.59.68 salesmomes.com - [01/Mar/2024:11:28:16 +0000] « GET /test/local/cache-js/jsdyn-javascript_porte_plume_start_js-5a119ad6.js?1709292431 HTTP/1.1 » 200 3072 « https://salesmomes.com/test/spip.php?article1 » « Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 »

Bonjour,

des logs dans mysql.log ?

Quelle version de mysql / mariadb sur le serveur ?

Bonjour Pierre,

non, rien dans le mysql.log !
le serveur est sous 10.6.0-MariaDB-1:10.6.0+maria~focal
libmysql - mysqlnd 7.4.11
Version de PHP : 7.4.11

et déjà un grand merci de prêter attention à mon souci :wink:
Thomas

Re,

Tu as essayé de changer le niveau de log dans un fichier mes_options.php ?

// définir le niveau maximum de verbosité des logs
define('_LOG_FILTRE_GRAVITE', _LOG_DEBUG);

Merci pour l’astuce du niveau de log !

Voici un extrait :

dans spip.log : il y plusieurs dizaines de lignes, j’envoie ici ?
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet

dans notifications.log
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:info: notifications_forumposte_dist(forumposte,6)
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:info: notifications_forumvalide_dist(forumvalide,6)

dans journal.log
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:info: #ip:MON-IP# a édité forum 6 (titre+texte+nom_site+url_site+objet+id_objet) :: modifier, forum, 6

dans forum.log
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:info: insertion de forum sur article 1 (+0)
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:!INFO: update thread id_thread=6 avec array (
‹ id_objet › => ‹ 1 ›,
‹ objet › => ‹ article ›,
)
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:info: forum insere’ 6 sur article 1 (+0)
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:info: id_thread=6

Dans autoriser.log
2024-03-01 13:31:19 MON-IP (pid 24376) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:31:19 MON-IP (pid 24376) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:31:19 MON-IP (pid 24376) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:31:19 MON-IP (pid 24376) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:31:19 MON-IP (pid 24376) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:19 MON-IP (pid 24376) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:32 MON-IP (pid 24379) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:32 MON-IP (pid 24379) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:32 MON-IP (pid 24379) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:32 MON-IP (pid 24379) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:36 MON-IP (pid 24381) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:36 MON-IP (pid 24381) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:36 MON-IP (pid 24381) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:36 MON-IP (pid 24381) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:36 MON-IP (pid 24380) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:36 MON-IP (pid 24380) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:36 MON-IP (pid 24380) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:36 MON-IP (pid 24380) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:debug: autoriser joindredocument forum 6 () ?
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:debug: autoriser_joindredocument_dist(joindredocument, forum, 6, ) : niet
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:debug: autoriser autoassocierdocument forum 6 () ?
2024-03-01 13:31:39 MON-IP (pid 24381) :Pub:debug: autoriser_forum_autoassocierdocument_dist(autoassocierdocument, forum, 6, ) : niet
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:31:39 MON-IP (pid 24382) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet

dans session.log
2024-03-01 13:31:32 MON-IP (pid 24379) :Pub:info: ajoute session cookie 86400
2024-03-01 13:31:32 MON-IP (pid 24379) :Pub:info: ajoute session cookie 86400
2024-03-01 13:31:36 MON-IP (pid 24381) :Pub:info: ajoute session cookie 86400
2024-03-01 13:31:36 MON-IP (pid 24381) :Pub:info: ajoute session cookie 86400
2024-03-01 13:31:36 MON-IP (pid 24380) :Pub:info: ajoute session cookie 86400
2024-03-01 13:31:36 MON-IP (pid 24380) :Pub:info: ajoute session cookie 86400

Le mieux serait de vider le tmp/ faire le test de commentaire et voir les logs qui sorte.

Est ce que tu sais ce que l’hébergeur à fait le 25/11 ?

Je leur ai posé la question tout à l’heure, j’attends leur réponse (DRI.fr)
Nous sommes chez eux depuis 20 ans, tout comme nous utilisons plusieurs SPIP depuis plus de 20 ans :wink:


Voici les logs après avoir vidé le cache :
autoriser log
2024-03-01 13:51:34 78.monipXXX (pid 24687) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:51:34 78.monipXXX (pid 24687) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:51:35 78.monipXXX (pid 24687) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:51:35 78.monipXXX (pid 24687) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:51:35 78.monipXXX (pid 24687) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:35 78.monipXXX (pid 24687) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:45 78.monipXXX (pid 24687) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:45 78.monipXXX (pid 24687) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:45 78.monipXXX (pid 24687) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:45 78.monipXXX (pid 24687) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:51 78.monipXXX (pid 24692) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:51 78.monipXXX (pid 24692) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:51 78.monipXXX (pid 24692) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:51 78.monipXXX (pid 24692) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:58 78.monipXXX (pid 24692) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:58 78.monipXXX (pid 24692) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:58 78.monipXXX (pid 24692) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:58 78.monipXXX (pid 24692) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:58 78.monipXXX (pid 24697) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:58 78.monipXXX (pid 24697) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:51:58 78.monipXXX (pid 24697) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:51:58 78.monipXXX (pid 24697) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:debug: autoriser joindredocument forum 8 () ?
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:debug: autoriser_joindredocument_dist(joindredocument, forum, 8, ) : niet
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:debug: autoriser autoassocierdocument forum 8 () ?
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:debug: autoriser_forum_autoassocierdocument_dist(autoassocierdocument, forum, 8, ) : niet
2024-03-01 13:52:06 78.monipXXX (pid 24696) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:52:06 78.monipXXX (pid 24696) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:52:06 78.monipXXX (pid 24696) :Pub:debug: autoriser afficher_public porteplume () ?
2024-03-01 13:52:06 78.monipXXX (pid 24696) :Pub:debug: autoriser_porteplume_afficher_public_dist(afficher_public, porteplume, , ) : OK
2024-03-01 13:52:07 78.monipXXX (pid 24696) :Pub:debug: autoriser ecrire () ?
2024-03-01 13:52:07 78.monipXXX (pid 24696) :Pub:debug: autoriser_ecrire_dist(ecrire, , , ) : niet

forum.log
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:info: insertion de forum sur article 1 (+0)
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:!INFO: update thread id_thread=8 avec array (
‹ id_objet › => ‹ 1 ›,
‹ objet › => ‹ article ›,
)
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:info: forum insere’ 8 sur article 1 (+0)
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:info: id_thread=8

journal.log
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:info: #ip:78.monipXXX# a édité forum 8 (titre+texte+nom_site+url_site+objet+id_objet) :: modifier, forum, 8

jq.log
2024-03-01 13:51:35 172.17.0.2 (pid 24688) :Pub:debug: cron !
2024-03-01 13:51:35 172.17.0.2 (pid 24688) :Pub:debug: JQ schedule 1709297495 / 1709297510
2024-03-01 13:51:35 172.17.0.2 (pid 24688) :Pub:debug: JQ schedule job end time 1709297495
2024-03-01 13:51:35 172.17.0.2 (pid 24688) :Pub:debug: JQ schedule end time 1709297495
2024-03-01 13:51:35 78.monipXXX (pid 24689) :Pub:debug: cron !
2024-03-01 13:51:35 78.monipXXX (pid 24689) :Pub:debug: queue_sleep_time_to_next_job

notifications.log
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:info: notifications_forumposte_dist(forumposte,8)
2024-03-01 13:52:06 78.monipXXX (pid 24694) :Pub:info: notifications_forumvalide_dist(forumvalide,8)

session.log2024-03-01 13:51:45 78.monipXXX (pid 24687) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:45 78.monipXXX (pid 24687) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:51 78.monipXXX (pid 24692) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:51 78.monipXXX (pid 24692) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:58 78.monipXXX (pid 24692) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:58 78.monipXXX (pid 24692) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:58 78.monipXXX (pid 24697) :Pub:info: ajoute session cookie 86400
2024-03-01 13:51:58 78.monipXXX (pid 24697) :Pub:info: ajoute session cookie 86400

Meme sur un site sans plugins ajouter ? la configuration des forum est bien faites ?

oui, aucun plugin sur ce site de test, il est tout propre tout neuf…
et config du forum « normal », (publication immédiate sans inscription)

L’hébergeur n’aurait pas mis en place un truc de sécu qui bloque le post sur les champs « nom » et « email » ?

1 « J'aime »

je viens de tester sur un SPIP chez un autre hébergeur, meme config…
tout fonctionne !
celà vient donc de mon hébergeur !
Je vais voir avec eux et vous tiens informé !
Merci !!!
Thomas

Pour vous tenir informé :

Rappel : les champs NOM et EMAIL apparaissent bien lors de la prévisualisation des commentaires, mais ne sont pas enregistrés dans la base de données lors de l’envoi définitif des coms

L’hébergeur DRI ne trouve rien son leur coté, pas de message d’erreur, spips à jour etc.
chez infomaniak, celà fonctionne parfaitement (avec les mêmes dernières versions de SPIP et plugins)

Notre hébergeur a déployé les mêmes modules que le php8.1 d’infomaniak, sans que cela règle le problème.
Ca coince quelques part

Et en faisant une copie du site chez Infomaniak pour tester ?

Et c’est plutôt mysql.log que j’irais regarder.

Bonjour
merci pour votre réponse
le même site chez infomaniak (même version de SPIP, pas de plugins supplémentaires) fonctionne bien, les champs « nom » et « email » des visiteurs non connectés s’affichent bien…

J’avais publié le fichier mysql.log ici mais l’ai effacé car il n’y avait (curieusement !) aucune info dedans (pour alléger)


Le « même » site, est-ce que c’est bien :

  • copie de tous les fichiers du site qui ne marche pas
  • dump mysql du site qui ne marche pas restauré sur le site de test

Si ça n’est pas fait ainsi, ça n’est pas une copie du site.

Autre piste : avec phpmyadmin ou adminer, est-ce que les champs qui ne s’enregistrent pas sont bien dans la table de la base de données ?

j’ai fait des installations neuves de la dernière version de SPIP sur les deux serveurs

les champs « noms » et « email » sont bien dans la base…

et aucune erreur n’apparait dans mysql.log !

je poursuis la recherche :slight_smile:

Merci !

Bonjour !

C’était bien une mauvaise configuration de notre serveur !
Je remercie grandement l’équipe de DRI qui a dû s’arracher les cheveux pour comprendre ce qu’il se passait :wink:

Et merci à vous deux pour l’écoute et les conseils !
Thomas


Après avoir tout essayé, l’option côté serveur qui reste à tester est de modifier l’emplacement du service PHP-FPM.
Actuelllement PHP-FPM est dans un container Docker, nous pouvons le passer directement sur l’hôte.

En redéployant php7.4 hors du container, il y a une alerte sur la variable session_save_path qui ne pointait pas sur le bon répertoire temporaire de stockages des sessions.
En la ré-ajustant au bon répertoire, le formulaire a pu fonctionner.
Le formulaire enregistre bien les champs affichés à la vérification avant l’envoi mais doit récupérer les données des champs mail et nom qu’il a stocké dans la session enregistrée dans le répertoire temporaire des sessions pour enregistrer le tout dans la base de données.
S’il ne trouve pas le répertoire des sessions, c’est vide.
C’est bien un problème de mauvaise configuration initiale et nous en sommes désolé.

1 « J'aime »

Super, content que tu aies résolu ton problème, et merci pour le partage de la solution, ça pourra servir à d’autres personnes.

1 « J'aime »