kostenloser Webspace werbefrei: lima-city


Sessions in XAMPP

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    mclman

    Kostenloser Webspace von mclman

    mclman hat kostenlosen Webspace.

    Hallo,

    habe mir eine Seite von meinen lima server runter gezogen....

    Problem, seit dem ich die Seite nun auf XAMPP starte speicehrt er keine sessions mehr!
    ich habe 01815 xampp installiert und keine configuration geändert, muss ich da was machen ?

    Vielen Dank.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

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

  3. Hmm so ist das schwer zu sagen...

    schreibe mal zu Begin in deine Index.php:
    <?
      error_reporting(E_ALL);
    ?>


    Dadurch werden alle Fehler durch PHP angezeigt... evtl. hilft dies ja bei der Fehlersuche ;-)

    Grüßle
  4. t*****b

    Wie speicherst du die Session-Daten?

    In neueren PHP-Versionen kann man Sessions einfach per $_SESSION["variablename"] = "irgendwas"; setzen, in älteren musste man das über $variable = "foo"; session_register("variable"); verwenden. Evtl. liegt das Problem daran. Ansonsten poste doch einfach mal deinen Quellcode.
  5. Autor dieses Themas

    mclman

    Kostenloser Webspace von mclman

    mclman hat kostenlosen Webspace.

    boar, sry dass ich mich jetzt mal weiger^^ überblick meinen "dreckscode" iwie nicht so wirklich ...(ist 2.5 jahre alt^^)

    also (frag mich bitte nich warum die test heißt :D):

    session_register('test');
    $test = $name;

    ist register haha :P

    Registieren tut er die auch ...

    ein|i:2;test|s:6:"XXX";

    nun ist das Problem wenn ich

    $test aufrufe sagt mir error_reporting, dass die Variable unbekannt ist hab ich jetzt iwas mit Sessions vergessen?

    EDIT:
    ok: $test = $_SESSION['test'];
    anstatt
    session_register('test');

    wenn ich die Sessions nutze

    (aber frage dazu warum funkt das auf lima?!^^)


    Beitrag geändert: 29.10.2008 22:58:50 von mclman


    Beitrag geändert: 29.10.2008 23:01:22 von mclman
  6. Anderer Ansatz: Hast du register_globals auf "off"? Das ist hier bei lima anscheinend standardmäßig eingeschaltet (ein wenig unverständlich btw, aber egal), bei xampp standardmäßig aus (IIRC).

    Edit: Sollte in der php.ini zu finden sein.

    Beitrag geändert: 30.10.2008 0:27:18 von tavern
  7. Autor dieses Themas

    mclman

    Kostenloser Webspace von mclman

    mclman hat kostenlosen Webspace.


    Anderer Ansatz: Hast du register_globals auf "off"? Das ist hier bei lima anscheinend standardmäßig eingeschaltet (ein wenig unverständlich btw, aber egal), bei xampp standardmäßig aus (IIRC).

    Edit: Sollte in der php.ini zu finden sein.

    Beitrag geändert: 30.10.2008 0:27:18 von tavern


    ey, wunderbar da ist der Unterscheid :)

    mal schauen, ob ich den Code nun umschreib oder was auch immer aber ich kann mich einloggen :)

    Gibet n nachteil von den Globals ?


    PS: Du benötigst selber Karma um Karma zu vergeben! :slant: *imaginäres Karma gib* :biggrin:
  8. Nunja der entscheidende Nachteil von Globals ist, dass die Webseite da mehr angreifbar ist ;-) Variablen aus der URL werden dann mitunter in deinen Quellcode übernommen und ausgeführt, wodurch jemand sich zum Bsp. einloggen könnte und evtl. Admin Status erlangt.

    Hab dir mal bissl Karma gegeben ;-) ...scheinst ja schon länger dabei und nett zu sein.

    Grüßle

  9. Gibet n nachteil von den Globals ?


    PS: Du benötigst selber Karma um Karma zu vergeben! :slant: *imaginäres Karma gib* :biggrin:


    Wie schon angesprochen, sind die globals ein mögliches Sicherheitsrisiko - weswegen mich auch wundert, dass die hier standardmäßig aktiviert sind ;)

    Vielleicht ein kleines Beispiel - zugegeben, ein wenig sinnfrei, aber es geht ja ums Prinzip (nach http://www.webmasterpro.de/coding/article/php-sicherheit-register-globals.html):

    <?php
    
    if ($username == "Admin") {
      $is_admin = true;
    }
    
    if ($is_admin) {
      // Total geheimer Adminbereich.
    }
    
    ?>


    Das Beispiel geht davon aus, dass per Cookie ein Benutzername übergeben wird und verwendet diesen zur Prüfung auf Adminrechte. Durch register_globals kann man die Variable allerdings auch z.B. durch www.domain.de/script.php?username=Admin belegen. Alternativ könnte man auch durch www.domain.de/script.php?is_admin=1 direkt zum Adminbereich gelangen. Okay, das sind beides eher Beispiele schlechten Programmierstils, aber trotzdem.

    Obiges Beispiel in besser:

    <?php
    
    $is_admin = false; // Variable vorbelegen.
    
    // Und direkt auf $_COOKIE prüfen.
    if ($_COOKIE['username'] == "Admin") {
      $is_admin = true;
    }
    
    if ($is_admin) {
      // Total geheimer Adminbereich.
    }
    
    ?>


    Jetzt wird nur noch der Benutzername aus dem Cookie beachtet und die Variable is_admin vorbelegt. Ich würde das Skript so oder so nicht zur Adminprüfung einsetzen (sich auf ein Cookie verlassen ist auch nicht sicher, aber das führt jetzt evtl. zu weit), aber ich hoffe, das Prinzip wird klar ;)

    Außerdem soll register_globals wohl in PHP 6 entfernt werden (http://de3.php.net/register_globals), die Verwendung empfiehlt sich schon allein deswegen nicht.


    Na inzwischen hast ja richtiges Karma ;)



    Edit: Okay, der Backslash war anscheinend nur in der Vorschau... seltsames Forum.


    Beitrag geändert: 30.10.2008 10:22:51 von tavern
  10. 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!