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.
18 visiteur(s) et 0 membre(s) en ligne.
Activité du Site

Pages vues depuis 25/05/2001 : 109 369 480

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

Top 10  Statistiques

Index du forum »»  Bugs, Probs ... »» [Résolu] - Forum et php 7

[Résolu] - Forum et php 7#26673

2Contributeur(s)
Elcorsujpb
3 Modérateur(s)
developpeurjpbJireck
Elcorsu Elcorsuicon_post
NPDS Forum Extender
-: Problèmes :-
 
SujetForum et php 7 
Votre Système d'Exploitation-: Autres  
Votre Package Web-: Apache + Php + MySql  
Votre version de PHP 
Version NPDS (voir statistiques du site)-: REvolution 
Type de problème-: Erreur(s) Php  
Votre hébergeur-: Autre(s)  
Votre PrioritéOK, j'attends  
Description du problèmeBonjour,
J'ai migré chez mon hébergeur en php 7 sans possibilité de retour.
NPDS version 13. J'ai fait pas mal de modifications sur mes codes perso et modules (encapsuleur, edit user...). tout marche sauf au niveau des forums où si je veux poster un sujet la page …/newtopic.php?forum=21 est blanche
et si je veux modifier un post la page .../editpost.php?post_id=6701&topic=1327&forum=21&arbre=0 s'ouvre bien, je rentre mon message, je valide mais il apparait mais vide de texte.
A noté qu'en serveur local usbwebserver_v8.6.2 ça fonctionne
le mainblock fonctionnait aussi en local mais pas en ligne.
J'ai été obligé de copier la fonction mainblock de votre version 16 et nickel.
Il y a tellement d'!include! dans la gestion des forums que je ne sais pas trop ou aller

 
Inclure la signaturetrue 
notification par Emailtrue 
..::..
jpb jpbicon_post
je ne comprend pas tu es en 13 ou en 16 beta ??
?? si tu es en 13 avec php 7 ca va être compliqué à gérer car tu vas avoir de nombreux problèmes à résoudre
?? si tu es en Beta 16 en principe cela devrait fonctionner .??????
Elcorsu Elcorsuicon_post
Bonjour,
Je suis en 13. J'ai essayé de migré en 16 mais beaucoup de pb avec tous les fichiers que j'ai créé et l'utf8 , mon thème. ...
Pour l'adaptation de la 13 pour php 7, j'ai tout pu adapté long mais tout marche
Sauf pour les forums. Comme indiqué.
Si tu peux juste me donner une piste.
Merci en tout cas.
Mon site gère mon club de plongée. Je poursuis en parallèle l'adaptation pour la 16 mais pendant ce temps je suis obligé d'avoir le site operationnel

Message édité par : Elcorsu / 08-03-2019 08:56

jpb jpbicon_post
il faut que tu modifie ton fichier grabs_global.php pour pouvoir capter toutes les erreurs php
tu décommentes la ligne 25 (en enlevant les //)
et tu commentes la ligne 27 (en rajoutant //)

comme ca tu pourras identifier les erreurs qui apparraissent (tu peux le faire temporairement juste pour capter les erreurs et remettre le fichier à don etat initial)
et donc ensuite tu peux donner ici l'url et les notices qui apparraissent ce sera plus facile ...
Elcorsu Elcorsuicon_post
Ok merci. Je fais ça dans le week-end.
Elcorsu Elcorsuicon_post
Fait mais rien n'apparaît pendant la navigation dans les différentes url à problème 😣
Ce n'est pas enregistré dans un log?

Message édité par : Elcorsu / 08-03-2019 18:01

jpb jpbicon_post
si cela peu suivant la configuration de ton serveur ....
Elcorsu Elcorsuicon_post
Alors pour newtopic en navigant sous Android j'ai 500 Internal Server Error
jpb jpbicon_post
oui mais provoquer par quoi that is the question .... tu dois avoir un fichier log aussi ....
Elcorsu Elcorsuicon_post
sur le fichier log erreur de l'hébergeur j'ai:
PHP Parse error: Invalid numeric literal in /mnt/web115/d1/02/51964602/monsite.com/htdocs/newtopic.php on line 170: /home/strato/http/power/rid/46/02/51964602/monsite.com/htdocs/newtopic.php
et le code est dans newtopic:

      $sql = "UPDATE ".$NPDS_Prefix."users_status SET posts=posts+1 WHERE (uid='".$userdata['uid']."')";
      $result = sql_query($sql);
      if (!$result) {
         forumerror(0029);
      }



Et le code d'erreur renvoie dans fonction php à

   if ($e_code == "0029")
      $error_msg = translate("Couldn't update post count.");


Message édité par : Elcorsu / 08-03-2019 21:24

Elcorsu Elcorsuicon_post
j'ai remplacé
forumerror(0029);
par
forumerror("0029");
et la page newtopic s'ouvre enfin mais une fois le message rentré et validé, le corps du post reste vide.
Je vais modifier tous les forumerror de la même façon voir...
Elcorsu Elcorsuicon_post
toujours le même problème. Maintenant le log est bon.
Je pense que c'est dans les instructions et conditions sql que $message n'est pas pris en compte et chargé dans la bdd. où je ne trouve pas encore...

Message édité par : Elcorsu / 09-03-2019 01:18

Elcorsu Elcorsuicon_post
c'est la function make_clickable appliquée au message qui m'empèche de le valider.
y a-t-il une incompatibilité avec php 7. si je la supprime dans editpost.php tout fonctionne
Elcorsu Elcorsuicon_post
pour être plus précis c'est la fonction antispam qui fait le bug. J'ai vu quelle avait évoluée en php7
Je l'ai mise en comment pour l'instant dans le function.php et regarde la fonction anti_spam dans le mainfile.php mais ça dépasse mes compétances :-)

function make_clickable($text) {
   $ret="";
   $ret = preg_replace('#(^|\s)(http|https|ftp|sftp)(://)([^\s]*)#i',' <a href="$2$3$4" target="_blank" class="noir">$2$3$4</a>',$text);
   //$ret = preg_replace('#([_\.0-9a-z-]+@[0-9a-z-\.]+\.+[a-z]{2,4})#ei','preg_anti_spam("$1")',$ret);
   return($ret);
}


jpb jpbicon_post
oui cette fonction a été corrigé dans la 16 (en fait il faut que tu rajoute une petite fonction annexe)
(il s'agit d'une modification de l'option e des callback obsolete en php7 ....)

(À partir de PHP 5.5.0, une alerte de niveau E_DEPRECATED est émise lorsque vous utilisez l'option "\e". À partir de PHP 7.0.0, une alerte de niveau E_WARNING est émise dans ce cas, et l'option "\e" n'a aucun effet.)


prend les lignes 455 à 461 du fichier functions.php
copie et remplace ... dans ton fichier

ce cas de figure existe sur d'autre fonction de mémoire ....donc tu n'as pas fini ....
Elcorsu Elcorsuicon_post
Attention sur la version 16 proposé en ligne dans le functions.php, il y a un bug ligne 53 forumerror(0031); au lieu de forumerror('0031');

Il y a des oublies du même type forumerror dans les fichiers qui gèrent les forums

ça bloque la page sous php7

Pour ma part tout bon en attendant de migrer sur la 16
Merci de ton aide et patience
jpb jpbicon_post
cool !

"Attention sur la version 16 proposé en ligne dans le functions.php, il y a un bug ligne 53 forumerror(0031); au lieu de forumerror('0031'); "


==>oui tu as raison ! je corrige ( bien que cette possibilité ne soit JAMAIS appelé par la fonction (en tout cas par le code du core !?...
.... je ne sais pas pourquoi on a ce case .....)
c'est pour celà que l'on a jamais identifié l'erreur ....

Elcorsu Elcorsuicon_post
:-D :-)