kostenloser Webspace werbefrei: lima-city


Variable in SESSION

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    s******y

    Ich stelle mich wohl ziemlich dumm an, aber ich habe keine Ahnung wie ich folgendes Problem löse. Die Suchfunktion hier funktioniert leider immer noch nicht :mad: und Google wollte auch nicht :slant:, also bleibt noch ihr :thumb:...

    $test = \\\'Test\\\';
    echo (\\\'So funktioniert es nicht: \\\'.$_SESSION[$test].\\\'.\\\');


    Es geht darum eine Variable innerhalb von Session zu schreiben. Danke für eure Hilfe

    EDIT: Die Backslashes gehören natürlich nicht dazu:P

    Beitrag geändert: 3.9.2007 20:53:26 von swissguy
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Bestimmt hab ich was falsch verstanden, aber das geht doch so?

    <?
    $test = \'user\';
    $_SESSION[user] = \'Wollnashorn\';
    echo (\'Ich bin \'.$_SESSION[$test].\'\');
    ?>


    Edit: Die \' werden nicht angezeigt x_X

    Beitrag geändert: 3.9.2007 21:22:53 von wollnashorn
  4. s***h

    Und so geht es nicht:
    <?php
    $test = \"blu\";
    $test2 = \"bla\";
    $_SESSION[$test] = $test2;
    
    echo $_SESSION[$test];
    ?>



    PS: Hier auf Lima stimmt was mit den Backslahes nicht!

    Beitrag geändert: 3.9.2007 21:23:40 von sesch
  5. Autor dieses Themas

    s******y

    Ich habe den Wert der Variablen $test = \\\\\\\'Test\\\\\\\' und
    $_SESSION[\\\\\\\'Test\\\\\\\'] separat ausgegeben. Beide enthalten Werte. Wenn ich nun beide Variablen zu $_SESSION[$test] verbinde ist da plötzlich kein Wert mehr. Dabei sollte doch eigentlich das selbe wie $_SESSION[\\\\\\\'Test\\\\\\\'] ausgegeben werden.

    Der Fehler ist nun behoben, er lag ganz woanders. Damit ich keine Verwirrung stifte:
    $_SESSION[$variable] funktioniert einwandfrei.

    Beitrag geändert: 3.9.2007 21:51:39 von swissguy
  6. Äähm... Ich verstehe irgendwie den Aufwand nicht xD
    Kann sein, dass ihr einen anderen Syntax benutzt als ich (oder umgedreht^^) oder dass hier was falsch angezeigt wird, aber warum deklariert ihr die Variablen so?

    Hier
    <?php
    $test = \"blu\\\";
    $test2 = \\\"bla\\\";
    $_SESSION[$test] = $test2;
    
    echo $_SESSION[$test];
    ?>

    wird vom ersten Anführungszeichen bis zum nächsten ein String in die Variable eingelesen. Da aber nach dem ersten Anführungszeichen alle mit dem Backslash geescaped werden, werden sie nicht weiter beachtet, so dass alle nachfolgenden Funktionen als String eingelesen werden. Da aber nach dem ersten Anführungszeichen kein Anführungszeichen steht, das nicht geescaped wurde, endet der String nicht, was zu einem Parse-Error führt.

    Ich mache das immer so:
    <?php
     $_SESSION[\"var\"] = \"BlaBliBlubb\";
     print $_SESSION[\"var\"];
    ?>


    Ausgabe:
    BlaBliBlubb


    Wie gesagt, bei mir geht es so, kann aber auch sein, dass ich euch einfach nicht verstehe :biggrin:
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!