carsten schlichting: $_SESSION SELTSAMKEIT

hallo

bei mir passiert etwas in meinem script, was ich gar nicht glauben kann und habe gedacht ich poste das mal.

also habe ein array()   , das ich immer in eine Session ein und auslese.

das array heißt ungefähr so $fgh_foooo_in.Und da les ich jetzt aus einer Mysql datenbank daten ein.Danach sieht das ARRAY so aus:

$fgh_foooo_in[tupel][spaltenname]

ausversehen, hatte ich in meinem script noch in alter schreibweise den array leicht abgewandelt ohne das _in stehen:

ungefähr so:

$fgh_foooo[tupel][spaltenname]

beim ersten aufruf der Seite ist kein wert für den falschgeschriebenen array eingesetzt worden, aber beim erneuten aufrufen, ohne das die datenbank ausgelesen wurde, werden plötzlich die werte von dem array $fgh_foooo_in[tupel][spaltenname] eingesetzt.

Und das finde ich etwas seltsam.

weiß jemand woran das liegen könnte??

In der session heißt der array SESSION['$fgh_foooo']

also Grüße von mir

carsten

  1. hallo

    ausversehen, hatte ich in meinem script noch in alter schreibweise den array leicht abgewandelt ohne das _in stehen:

    Da waren bestimmt _DIE_ am Werk

    LG
    Chris

    1. Hi

      Da waren bestimmt _DIE_ am Werk

      mit _die_ meinst du: "_"?

      aber ist es nicht erlaubt in einem variablennamen "_" zu benutzen

      grüße von mir

      carsten

      1. Hallo carsten.

        Da waren bestimmt _DIE_ am Werk

        mit _die_ meinst du: "_"?

        Nein, die gelben Engel.

        Einen schönen Freitag noch.

        Gruß, Ashura

        --
        sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
        mathbr:del.icio.us/ mathbr:w00t/
  2. echo $begrüßung;

    weiß jemand woran das liegen könnte??

    Vielleicht ... Könntest du etwas Code liefern, mit dem man das Problem nachvollziehen kann?

    echo "$verabschiedung $name";

    1. echo $begrüßung;

      weiß jemand woran das liegen könnte??

      Vielleicht ... Könntest du etwas Code liefern, mit dem man das Problem nachvollziehen kann?

      irgedwie muß das problem aber im Schon_gesagten liegen andernfalls müßte ich meine ganzen scripte hochladen. Und dann lohnt sich der Aufwand vielleicht nicht. Habe nur gedacht, dass jemand vielleicht eine idee hat, wo der Fehler liegt.

      aber danke

      grüße von mir

      carsten

  3. hi,

    ich konnte dir jetzt auch nicht ganz folgen ...

    Aber wenn $varname $_SESSION['varname'] beeinflusst - oder umgekehrt - dann dürfte dies vermutlich damit zusammenhängen, dass register_globals aktiviert ist - dann wirft PHP bekanntlich bei den Scopes einiges durcheinander.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Hi

      Aber wenn $varname $_SESSION['varname'] beeinflusst - oder umgekehrt - dann dürfte dies vermutlich damit zusammenhängen, dass register_globals aktiviert ist - dann wirft PHP bekanntlich bei den Scopes einiges durcheinander.

      das Problem bei meinem Provider ist, dass dort auf dem server register_globals auf on steht, so habe ich auch meinen Testserver so laufen.

      wenn ich bei meinem Provider die php.ini nicht beeinflussen kann, kann ich denn beim Aufrufen des scripts register_globals individuell auf off stellen?

      register_globals=off ?????

      http://de2.php.net/register_globals

      grüße von mir

      carsten

      1. hi,

        das Problem bei meinem Provider ist, dass dort auf dem server register_globals auf on steht, so habe ich auch meinen Testserver so laufen.

        Ja, das Testsystem der produktiven Konfiguration anzupassen, empfiehlt sich idR.
        Wenn dann das Produktivsystem aber auch schon suboptimal konfiguriert ist, kann das auch ein Schuss ins eigene Knie sein.

        wenn ich bei meinem Provider die php.ini nicht beeinflussen kann, kann ich denn beim Aufrufen des scripts register_globals individuell auf off stellen?

        Es muss _vor_ dem Aufruf des Scriptes geschehen - wenn dein Script bereits läuft, ist es zu spät, dann wurden die Variablen schon bereitgestellt - ini_set() geht für register_globals also nicht.

        Falls dir dein Hoster es erlaubt (und Apache als Webserver nutzt), kannst du die Einstellung in einer .htaccess-Datei vornehmen (Achtung, ggf. bestehende Datei nicht überschreiben):

        php_flag register_globals off

        gruß,
        wahsaga

        --
        /voodoo.css:
        #GeorgeWBush { position:absolute; bottom:-6ft; }