logo

NPDS : Gestion de contenu et de communauté


Content & Community Management System (CCMS) robuste, sécurisé, complet, performant, parlant vraiment français, libre (Open-Source) et gratuit.
30 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 108 400 791

  • Nb. de membres 8 693
  • Nb. d'articles 1 695
  • Nb. de forums 26
  • Nb. de sujets 8
  • Nb. de critiques 92

Top 10  Statistiques

Index du forum »»  Pour débuter »» Comportement Revolution V16

Nouveau sujet
 Comportement Revolution V16#26887Répondre

3Contributeur(s)
cheval29jpbnicolas2
3 Modérateur(s)
developpeurjpbJireck
cheval29 cheval29icon_post
Suite à l'installation de V16 au début du mois, j'ai abouti à la consolidation de mon développement spécifique table et programmes php.

Maintenant j'explore la mise en œuvre du CMS, quelques difficultés :

1) File manager semble Ok
2) Super cache semble OK
3) OptimySQL semble OK
4) SavemySQL semble OK
5) MétaTAG semble OK
6) MétaMOT semble OK
7) Blackboard semble OK
8) Liste des logs semble OK

8 bis) Liste des sessions affiche le message d'erreur
gethostbyaddr(): Address is not a valid IPv4 or IPv6 address in C:\wamp64\www\revolutionv16\modules\session-log\session-log.php on line 95

9) Le bouton "sauver les modifications" du formulaire de gestion des préférences reste inactif.
Il me faut donc éditer le contenu du fichier config.php avec notepad.

A suivre,

Pour mémoire je suis en local W64 avec
Apache 2.4.59
PhpMyAdmin 5.2.1
MySQL 8.3.0
Php 7.4.33



jpb jpbicon_post
Yo donc ça avance ! ...

8 bis) Liste des sessions affiche le message d'erreur
gethostbyaddr(): Address is not a valid IPv4 or IPv6 address in C:\wamp64\www\revolutionv16\modules\session-log\session-log.php on line 95

<== la fonction gethostbyaddr() (dans session-log) semble donc considérer que l'adresse IP n'est pas valide... donc il faut contrôler ce que tu as dans la table session column host-addr ...celà pour savoir si c'est la fonction getip() (du fichier grab_globals) qui est en défaut ....
Quelle est cette valeur dans ta table session column host-addr ??

9) Le bouton "sauver les modifications" du formulaire de gestion des préférences reste inactif.
Il me faut donc éditer le contenu du fichier config.php avec notepad.

<== il est possible qu'il te manque une valeur obligatoire (requise dans tes préférences et donc non rempli au cours de l'install auto ? ...) et que du coup le controle du formulaire t'empêche de valider ...
donc regarde plus particulièrement dans Préférences >> Informations générales du site TOUS les champs de cette section doivent etre rempli ... est ce le cas ?
(si tu peux envoi moi une copie de ton config.php par mp pour controle)

Message édité par : jpb / 28-06-2024 09:38

cheval29 cheval29icon_post
Merci pour ce retour,
Mon fichier config est en mp, et
Ci-dessous le contenu de l'export de ma table ce 28/6

DROP TABLE IF EXISTS `session`;
CREATE TABLE IF NOT EXISTS `session` (
`username` varchar(54) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`time` varchar(14) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`host_addr` varchar(54) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`guest` int NOT NULL DEFAULT '0',
`uri` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
`agent` varchar(1000) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci DEFAULT NULL,
KEY `username` (`username`),
KEY `time` (`time`),
KEY `guest` (`guest`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

--
-- Déchargement des données de la table `session`
--

INSERT INTO `session` (`username`, `time`, `host_addr`, `guest`, `uri`, `agent`) VALUES
('superu', '1719511061', '%3A%3A1', 0, '/admin.php', 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0');
COMMIT;
jpb jpbicon_post
merci pour le mp
si je comprends bien tu test en local pour l'instant... ?
si tu es en local le fichier config me parait ok à part
$nuke_url = "http://www.revolution16"; pourquoi ?
pourquoi pas http://127.0.0.1 ou quelque chose comme ça (suivant ton environnement local) ?

pour l'ip oui elle n'est pas correcte le code semble analyser deux adresse IP ::1,0 ???
renvoyées par le serveur et les fonctions native de php, la fonction de npds est normalement prévu pour ce cas de figure (rare de renvoi de deux adresses) en conservant la première des deux adresses ... je ne connais pas la validité de la première (en IPV6) ...?! et la deuxième pire ... 0 ?!!! :paf
il faudrait faire un petit test pour savoir ce que renvoi $_SERVER ...
pour cette erreur elle ne se produira sûrement pas en ligne :-)
cheval29 cheval29icon_post
Oui, c'est en local sur www.revolutionv16
... j'ai fixé $nuke_url à http://127.0.0.1 (sans repérer de changement)
... echo $_SERVER; renvoie "Array"

L'activation de la page par défaut démarre par le warning ci-dessous, le reste me semble bien fonctionner.

A suivre :b

Warning: Use of undefined constant topic_status - assumed 'topic_status' (this will throw an Error in a future version of PHP) in C:\wamp64\www\revolutionv16\modules\meta-lang\adv-meta_lang.php(242) : eval()'d code on line 100
Call Stack
# Time Memory Function Location
1 0.0001 363904 {main}( ) ...\index.php:0
2 0.0051 521992 select_start_page( $op = 'edito', '' ) ...\index.php:258
3 0.0052 522120 theindex( $op = 'edito', $catid = '', $marqeur = '' ) ...\index.php:48
4 0.0112 558040 !!!!!include!!!!!( 'C:\wamp64\www\revolutionv16\themes\Rev2016\central.php ) ...\index.php:233
5 0.0116 566264 meta_lang( $Xcontent = '...' ) ...\central.php:20
6 0.0146 646504 charg( $funct = 'MM_forumP', $arguments = '' ) ...\adv-meta_lang.php:243
7 0.0146 646504 MM_forumP( ) ...\adv-meta_lang.php:57

 Message édité par : jpb / 04/12/2024 16:46
 Message édité par : jpb / 04/12/2024 16:50
 Message édité par : jpb / 04/12/2024 16:52
 Message édité par : jpb / 04/12/2024 16:53
jpb jpbicon_post
Warning: Use of undefined constant topic_status - assumed 'topic_status' (this will throw an Error in a future version of PHP) in C:\wamp64\www\revolutionv16\modules\meta-lang\adv-meta_lang.php(242) : eval()'d code on line 100

oui ! il y a deux fautes dans( l'archive sql) les metamots ForumP() ForumL() ... donc dans ton phpmyadmin (ou autre) trouve ses deux metamots et modifie les en encadrant le topic_status comme ça 'topic_status'

ses deux vieux metamots souffre de plusieurs incohérences et son en cours de réécriture .... (et comme tu utilise le theme Rev2016 qui utilise central.php qui utilise un des metamots tu as l'erreur...)

Message édité par : jpb / 30-06-2024 11:40

jpb jpbicon_post
pour voir ce qu'il y a dans $_SERVER fait simplement un phpinfo() un fichier <?php phpinfo() ?>
cheval29 cheval29icon_post
Phpinfo()
C'est fait, j'ai adressé le tout par mp.
cheval29 cheval29icon_post
J'ai utilisé l'administration meta-lang pour encadrer les 2 termes topic_status (ForumL & ForumP) et... la magie du grand sorcier a opéré : y'a plus ces warnings.
Je passe les thèmes en revue pour retenir celui qui convient le mieux avec mes extensions.
jpb jpbicon_post
merci vu le mp ! il me permet de comprendre ce qui se passe avec cette IP
en fait ton server renvoi ::1 une adresse IP en format IPV6 loopback ce qui équivaut à 127.0.0.1. si il était en format IPV4 ...

:# donc il semble bien que cela ne convienne pas à notre suite de fonction (native et celles de npds) .... donc voilà une possibilité à prendre en compte .... :-o :-o

pour ton theme je te conseille un theme se finissant par _sk (ils sont les plus aboutis...) et ca te donnera infiniment plus de possibilité ! ...
nicolas2 nicolas2icon_post
C:\wamp64\www\revolutionv16\modules\session-log\session-log.php on line 95

gethostbyaddr(urldecode($host_addr))


$host_addr n'est pas décoder via urldecode donc Warning: gethostbyaddr(): Address is not a valid IPv4 or IPv6 address in .....

$host_addr devrais être ::1 et non %3A%3A1

dans la tabe sql le $host_addr est encoder avec urlencode sur la function getip() pour le contrôle avec gethostbyaddr il faut donc decoder avec urldecode($host_addr) et donc ip valide

et ta function gethostbyaddr() te renverra le hostname valide de ta machine

;-)

Message édité par : nicolas2 / 01-07-2024 00:14

jpb jpbicon_post
mais bien sûr que oui !! merci @nico et en plus on en avait déjà parlé !...
<== c'est corrigé
nicolas2 nicolas2icon_post
hi hi hi
cheval29 cheval29icon_post
De mon côté j'ai modifié la ligne 95 pour
'.gethostbyaddr(urldecode($host_addr)).'

Liste des sessions affiche bien maintenant ::1
Et HOST_ADR de la table contient %3A%3A1

:=!


jpb jpbicon_post
oui good ! on a poussé un peu plus la correction en abandonnant urlencode dans la fonction getip() et donc du coup remodifié les urldecode qui ne serve plus à rien ... et du coup maintenant les ip ne sont plus urlencodés dans les tables ...
https://github.com/npds/npds_dune/commit/a5a08f83653e74f324402fd65db6b9b229aa63a3