Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 05. Dezember 2015 23:12

nockenfell
Moderator
Ort: Lenzburg, Schweiz
Registriert: 09. November 2010
Beiträge: 2.814
Webseite

CMSMS-1 und PHP 7

Auf den ersten Blick läuft meine Seite unter 1.12.x stabil mit PHP 7.0. Geschwindigkeitstests habe ich bisher jedoch keine gemacht.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#2 05. Dezember 2015 07:05

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.878
Webseite

Re: CMSMS-1 und PHP 7

nockenfell schrieb:

Auf den ersten Blick läuft meine Seite unter 1.12.x stabil mit PHP 7.0.

Na das klingt doch erst mal schon gut, nachdem an anderer Stelle bereits böse Unkenrufe erklangen ...


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMS/ms
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline

#3 11. Februar 2016 22:07

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.878
Webseite

Re: CMSMS-1 und PHP 7

nockenfell schrieb:

Auf den ersten Blick läuft meine Seite unter 1.12.x stabil mit PHP 7.0.

Hab auch gerade mal geschaut - eine frische Installation auf einem XAMPP mit PHP 7.0.2 scheitert am massenhaften Auftreten dieser Fehlermeldung

Warning: strpos(): Empty needle in C:\xampp\htdocs\1-12-1\lib\smarty\libs\sysplugins\smarty_internal_templatelexer.php on line 316

Vermutlich rächt sich hier der Einsatz der alten Smarty-Version, die noch nicht bereit für PHP7 ist ...


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMS/ms
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline

#4 12. Februar 2016 00:23

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.878
Webseite

Re: CMSMS-1 und PHP 7

Hatte im SVN etwas von PHP7 Fixes gelesen - und war natürlich neugierig, wie der vorgenannte Fehler behoben wurde.

Leider in Orks-typischer Manier ... nämlich gar nicht. Das sieht dann z.Bsp. so aus (Änderung rot fett)

if ($this->smarty->auto_literal && ($this->mbstring_overload ? (mb_strpos(" \n\t\r",mb_substr($this->value,$this->ldel_length,1,'latin1'),0,'latin1') !== false) : (@strpos(" \n\t\r",substr($this->value,$this->ldel_length,1)) !== false))) {

Die Fehlermeldung wurde lediglich unterdrückt. Und dazu ("@") hatte ich mich ja bereits in der Vergangenheit geäußert sad

http://www.cmsmadesimple.de/forum/viewt … 513#p34513

Aber sei es drum - zumindest lief mit Übernahme dieser Änderungen

viewsvn.cmsmadesimple.org/comp.php?repname=cmsmadesimple&path=%2F&compare[]=%2F@10348&compare[]=%2F@10349

viewsvn.cmsmadesimple.org/comp.php?repname=cmsmadesimple&path=%2F&compare[]=%2F@10355&compare[]=%2F@10356

die Installation weiter. Den nächsten Stolperstein gab es beim Aufbau der Datenbank-Verbindung

Parse error: Invalid numeric literal in C:\xampp\htdocs\1-12-1\lib\adodb_lite\adodb-time.inc.php on line 757

Da finden sich zwar ein paar Hinweise

https://bugs.php.net/bug.php?id=70193
https://bugs.php.net/bug.php?id=71086

die mir aber erst einmal nicht weitergeholfen haben. Auch der Versuch, eine Anleihe bei der adodb-time.inc.php der Vollversion AdoDB 5.20.1 zu nehmen (die vor kurzem ein Update für PHP7 erhielt) als auch der Blick in die Sourcen von CMSMS-2 haben mich da nicht weiter gebracht.

Da ich eine Änderung innerhalb von AdoDB vermutet habe, hab ich nun einfach CMSMS die vorgenannte Vollversion von AdoDB untergeschoben. Und siehe da - die Installation lief weiter.

Schon fast erwartungsgemäß gab es weitere Fehler (ein paar Notices, ein Aufruf eines in PHP nicht mehr vorhandenen Befehls set_magic_quotes_runtime(), und ... und ...) und konnten auch ein Großteil der Tabellen nicht angelegt werden.

Hmm, ich glaub, ich mach dann besser erst mal Schluß  neutral ...

Beitrag geändert von cyberman (12. Februar 2016 00:24)


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMS/ms
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline

#5 12. Februar 2016 05:40

nockenfell
Moderator
Ort: Lenzburg, Schweiz
Registriert: 09. November 2010
Beiträge: 2.814
Webseite

Re: CMSMS-1 und PHP 7

Danke für deine Forschungen. Unter PHP7 habe ich beim mir festgestellt, dass AdvancedContent nicht läuft. Ob dies wirklich mit PHP7 zusammenhängt kann ich nicht 100% sagen, da ich kein PHP Downgrade zum testen ausgeführt habe. Ebenso habe ich mit btAdminer einige Fehlermeldungen.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#6 15. Februar 2016 00:18

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.878
Webseite

Re: CMSMS-1 und PHP 7

nockenfell schrieb:

Ebenso habe ich mit btAdminer einige Fehlermeldungen.

Möglicherweise musst du nur das Basis-Script austauschen

https://www.adminer.org/de/ schrieb:

Version 4.2.4, 2016-02-06

Dessen Aktualität lässt zumindest auf Kompatibilität mit PHP7 schließen; zumindest auf den ersten Blick scheint es zu funktionieren. Hab bei meinem Kurztest auf Xampp keine Probleme feststellen können.


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMS/ms
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline

#7 08. Oktober 2016 14:22

cyberman
Moderator
Ort: Dohna / Sachsen
Registriert: 13. September 2010
Beiträge: 6.878
Webseite

Re: CMSMS-1 und PHP 7

cyberman schrieb:

eine frische Installation auf einem XAMPP mit PHP 7.0.2 scheitert am massenhaften Auftreten dieser Fehlermeldung

Warning: strpos(): Empty needle in C:\xampp\htdocs\1-12-1\lib\smarty\libs\sysplugins\smarty_internal_templatelexer.php on line 316

Vermutlich rächt sich hier der Einsatz der alten Smarty-Version, die noch nicht bereit für PHP7 ist ...

Der Vollständigkeit halber - ohne die Unterdrückung via @ bekommt man es so hin

  if ($this->smarty->auto_literal && substr($this->value, $this->ldel_length, 1) <> '' && ($this->mbstring_overload ? (mb_strpos(" \n\t\r", mb_substr($this->value, $this->ldel_length, 1, 'latin1'), 0, 'latin1') !== FALSE) : (strpos(" \n\t\r", substr($this->value, $this->ldel_length, 1)) !== FALSE))) {

Konkret müssen die Zeilen 316 und 1123 in der Datei smarty_internal_templatelexer.php durch die eben genannte Zeile ersetzt werden.


1. Wie bekomme ich hier schnelle Hilfe?
2. HowTo: Fehlersuche bei CMS/ms
---
„First they ignore you, then they laugh at you, then they fight you, then you win.“ Mahatma Ghandi

Offline