gelöst PHP 7.2 und $_SESSION

Thema wurde von J Z, 12. September 2018 erstellt.

  1. J Z

    J Z Erfahrener Benutzer

    WARNING(2): "Use of undefined constant customers_status_name - assumed 'customers_status_name' (this will throw an Error in a future version of PHP)"

    Auf PHP 7.1 ist alles okay, nur ab PHP 7.2 tritt das auf :(
     
  2. Wilken (Gambio)

    Wilken (Gambio) Erfahrener Benutzer

    Das reicht so nicht um den Fehler einzugrenzen, da fehlt zuviel drumrum. Die Logmeldung zu diesem Eintrag wird erheblich länger ausfallen, die muss jemand sehen und sich darum kümmern. Also Meldung aus dem Log komplett zeigen, oder ein Ticket aufmachen.
     
  3. J Z

    J Z Erfahrener Benutzer

    Das tritt schon auf, wenn du nur einen kleinen Codeschnipsel schreibst...

    PHP:
    <?php
    include ('includes/application_top.php');
    $test = $_SESSION['customers_status'];
    if(
    $test[customers_status_name] == "Admin"){
    echo 
    "Ich bin Admin";
    }else{
    echo 
    "Ich bin kein Admin";
    }
    ?>
    PHP 7.1 okay
    PHP 7.2 Fehlermeldung wie oben

    Dies wird einen Fehler in einer zukünftigen Version von PHP auslösen ?
     
    Zuletzt bearbeitet: 13. September 2018
  4. Anonymous

    Anonymous Erfahrener Benutzer Mitarbeiter

    Das ist syntaktisch falsch, das müsste so aussehen:
    PHP:
    if($test['customers_status_name'] == "Admin"){
    Genau das besagt auch die Fehlermeldung: Wegen der fehlenden Anführungszeichen wird customers_status_name als Konstantenname interpretiert, und eine Konstante dieses Namens ist nicht definiert.
     
  5. J Z

    J Z Erfahrener Benutzer

    Oh, was bin ich blind, sicher, ihr habt recht. Manchmal sieht man den Wald vor lauter Bäumen nicht :D

    Überall woanders habe ich es richtig :rolleyes:

    Danke :)