Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: checkout_payment zeigt nur leere Seite unter PHP 7.0

    the traveller

    • Fördermitglied
    • Beiträge: 76
    • Geschlecht:
    Hallo liebe Community, bin ratlos und frage nach der Lösung zu folgendem Problem:

    Ich überarbeite gerade einen Shop und habe dazu einen neuen aufgesetzt Version 2.0.3.0!
    Habe die DB aus einem modified Shop 2.0.0.0 übernommen und entsprechend über den Installer auf Version 2.0.3.0 gebracht. Die DB Stammt aus einem modified Shop unter PHP 5.6. Der neue Shop soll auf PHP 7.0 laufen bei Hosteurope. Der neue Shop läuft auch soweit top bis auf den aufruf der checkout_payment, dort bringt er eine leere Seite, genau wie bei dem aufrufen im Frontentd des Systemcontents wie AGB Widerrufsrecht Impressum. Wenn ich die PHP Version für die Sub-Domain auf 5.6 stelle funktioniert der Shop ganz normal.
    Nur bei PHP 7.0 habe ich die genannten Probleme. Ist hier der Fehler in der DB zu suchen?

    Link zum Shop:

    http://test.style-your-life.eu/

    Grüße und schon mal Danke.

    Jürgen

    Linkback: https://www.modified-shop.org/forum/index.php?topic=38825.0

    hbauer

    • Experte
    • Beiträge: 1.097
    Re: checkout_payment zeigt nur leere Seite unter PHP 7.0
    Antwort #1 am: 12. April 2018, 06:53:31
    Ich hatte ein ähnliches Phänomen wg PayPal. Da fehlten bei PHP 7 Bibliotheken. Hast du schon im Log/ geschaut?

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Re: checkout_payment zeigt nur leere Seite unter PHP 7.0
    Antwort #2 am: 12. April 2018, 13:58:19
    Hallo Jürgen,

    in deinem Shop gibt es dieses Produkt -> http://test.style-your-life.eu/product_info.php?products_id=31 , welches im Beschreibungstext folgendes XML aus einem Word Dokument enthält.

    Code: XML  [Auswählen]
    <!--[if gte mso 9]><xml>
    <w:WordDocument>
     <w:View>Normal</w:View>
     <w:Zoom>0</w:Zoom>
     <w:TrackMoves/>
     <w:TrackFormatting/>
     <w:HyphenationZone>21</w:HyphenationZone>
     <w:PunctuationKerning/>
     <w:ValidateAgainstSchemas/>
     <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid>
     <w:IgnoreMixedContent>false</w:IgnoreMixedContent>
     <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText>
     <w:DoNotPromoteQF/>
     <w:LidThemeOther>DE</w:LidThemeOther>
     <w:LidThemeAsian>X-NONE</w:LidThemeAsian>
     <w:LidThemeComplexScript>X-NONE</w:LidThemeComplexScript>
     <w:Compatibility>
      <w:BreakWrappedTables/>
      <w:SnapToGridInCell/>
      <w:WrapTextWithPunct/>
      <w:UseAsianBreakRules/>
      <w:DontGrowAutofit/>
      <w:SplitPgBreakAndParaMark/>
      <w:DontVertAlignCellWithSp/>
      <w:DontBreakConstrainedForcedTables/>
      <w:DontVertAlignInTxbx/>
      <w:Word11KerningPairs/>
      <w:CachedColBalance/>
     </w:Compatibility>
     <m:mathPr>
      <m:mathFont m:val="Cambria Math"/>
      <m:brkBin m:val="before"/>
      <m:brkBinSub m:val="--"/>
      <m:smallFrac m:val="off"/>
      <m:dispDef/>
      <m:lMargin m:val="0"/>
      <m:rMargin m:val="0"/>
      <m:defJc m:val="centerGroup"/>
      <m:wrapIndent m:val="1440"/>
      <m:intLim m:val="subSup"/>
      <m:naryLim m:val="undOvr"/>
     </m:mathPr></w:WordDocument>
    </xml><![endif]-->
     

    Solchen XML-Code musst du entfernen. Ich denke das es beim Impressumstext sowie bei den AGB und dem Widerrufsrecht das selbe Problem ist, das dazu führt das im Browser eine weisse Seite angezeigt wird.

    PS:
    Die PHP Version 7.0 hat viele Fehler deshalb solltest Du sie nicht verwenden, nimm besser eine Version ab 7.1.x

    Gruss
    Hanspeter

    the traveller

    • Fördermitglied
    • Beiträge: 76
    • Geschlecht:
    Re: checkout_payment zeigt nur leere Seite unter PHP 7.0
    Antwort #3 am: 12. April 2018, 21:55:47
    Hallo und danke erstmal,

    leider läuft das Template nicht unter PHP 7.1, wobei im Error Log in PHP nichts steht bzw auch im error-report vom Shop. Mit dem Standart-Original Template modified läuft es, aber ebenfalls mit den genannten Fehlern, auch hier ist nichts im error-log zu finden. Auch unter PHP 7.0 treten die Fehler mit dem Original Template auf. Der einzige Fehler im Log von PHP ist dieser der auf das Template zurück geht, wobei ich nicht durchsteige wo das Problem liegt oder was genau dieses Problem bewirkt.

    [authz_core:error] [pid 25825] [client ***.***.***.***] [host ***.style-your-life.eu] AH01630: client denied by server configuration: /is/htdocs/wp***_***/www/web/shop-neu/templates/tb_mod_20_019/index.html
    sowie mit den Dateien index.htm + index.php + index.php5

    Grüße

    the traveller

    • Fördermitglied
    • Beiträge: 76
    • Geschlecht:
    Re: checkout_payment zeigt nur leere Seite unter PHP 7.0
    Antwort #4 am: 12. April 2018, 22:03:38
    Jo das war's, danke hpzeller!!

    Der miese Word-Code. Texte und Artikel hat der Kunde selbst angelegt, AGB aus den Dok's von jano z. Bsp.
    Deswegen hat er es auch nicht in den Checkout geladen anscheinend. PHP 5.6 hat es nicht interessiert  :lol1:

    Geht alles, sau geil!

    Danke, weis einer was es mit dem [authz_core:error] auf sich hat? Aber es scheint nicht wirklich was zu machen.

    hpzeller

    • Experte
    • Beiträge: 4.129
    • Geschlecht:
    Re: checkout_payment zeigt nur leere Seite unter PHP 7.0
    Antwort #5 am: 13. April 2018, 12:59:56
    [...]
    [authz_core:error] [pid 25825] [client ***.***.***.***] [host ***.style-your-life.eu] AH01630: client denied by server configuration: /is/htdocs/wp***_***/www/web/shop-neu/templates/tb_mod_20_019/index.html
    sowie mit den Dateien index.htm + index.php + index.php5
    [...]

    [...]
    Danke, weis einer was es mit dem [authz_core:error] auf sich hat? Aber es scheint nicht wirklich was zu machen.

    Die obige Fehlermeldung welche aus dem Error-Log des Apache-Web-Servers stammt, ist dem Umstand geschuldet das in der Datei 'templates/.htaccess' folgender Code steht, welcher direkte Zugriffe aus dem Web auf z.B. HTML-Dateien im Template-Ordner verbietet.

    <FilesMatch ".*\.(php|php3|php4|php5|phtml|htm|html|xhtml|pl)$">
      <IfModule mod_authz_core.c>
        # Apache 2.4
        <RequireAll>
          Require all denied
        </RequireAll>
      </IfModule>
      <IfModule !mod_authz_core.c>
        # Apache 2.2
        Order Deny,Allow
        Deny from all
      </IfModule>
    </FilesMatch>

    Konkret: So ein Aufruf im Browser wie hier -> https://shop-domain.tld/templates/tpl_modified/index.html führt beim Apache 2.4 zu einem Eintrag ins Error-Log, wie oben gezeigt.

    Gruss
    Hanspeter
    7 Antworten
    4113 Aufrufe
    21. Juli 2012, 22:08:15 von jannemann
    4 Antworten
    4125 Aufrufe
    13. November 2012, 11:08:42 von hd