Variablenübergabe mit session funzt net

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Variablenübergabe mit session funzt net

    hi @all

    folgendes:

    Ich habe aus einer DB verschiedene Arrays ausgelesen (geht ja nun gg...danke nochmals an hand ), und einen dieser Arrays $row[id] mit einer session gespeichert.

    In eurem Tutorial dazu steht, das man in die erste seite das einfügen soll:

    PHP-Code:
    session_save_path("../savesession");
    session_start();
    session_register('$row[id]'); 
    und in die nächste Seite diesen befehl hier

    PHP-Code:
    session_start(); 
    Meine Konstruktion sieht so aus:

    site1.php
    =>
    PHP-Code:
    session_save_path("../savesession");
    session_start();
    session_register('$row[id]'); 
    dann kommt die DB anfrage, wo $row[id] enthalten ist. Nach weiteren Abfragen führt er bei erfolg eine funktion aus

    edit_banner ()

    diese funktion ist eine <form>-Maske zum ändern von Daten in einer DB. In dieser Funktion steht "session_start();"...hier wird $row[id] ohne Probleme übergeben.
    Diese Maske führt nach <senden> auf eine weitere seite "verify_edit_banner.php".

    Ich habe in diese verify_edit_banner.php ebenfalls session_start(); eingefügt. Nur hier wird die Variable $row[id] nicht übergeben.

    An was liegt es? Was muss ich tun dass die Variable auch in dieser verify...php übergeben wird?

    cya CrazyPip

  • #2
    hi!
    meines wissens nach, sollte man das so machen:
    PHP-Code:
    session_start();
    session_register("row_id");
    $row_id 1234
    allerdings kriegste damit probleme bei schleifen, wenn's arrays sind.

    abhilfe kann hier serialize schaffen:
    PHP-Code:
    while( [bedingung] ){
          
    $row[] = $row_id[$i];
    }

    $bin serialize($row);

    $tmp tempnam("/tmp","~");
    $fp fopen($tmp,"w");
    fwrite($fp,$bin);
    fclose($fp);

    echo 
    "<a href='read.php?data=".str_replace("/tmp/","",$tmp)."'>auslesen</a>";

    // dann in der read.php

    $fp   fopen("/tmp/".$data,"r");
    $bin fread($fp,filesize("/tmp/".$data));
    fclose($fp);

    $row unserialize($bin);
    unlink("/tmp/".$data));

    echo 
    $row[0]; 
    Zuletzt geändert von beebob; 19.09.2002, 19:04.

    Kommentar


    • #3
      session_register() registriert eine Variable als Bestandteil einer Session ... (z.B.: Durch session_register("hello") wird die Variable $hello erstellt bzw. einer Session zugeordnet)

      Dieses Vorgehen sollte allerdings nicht mehr ... sondern das Superglobal $_SESSION verwendet werden:

      $_SESSION["hello"]="irgendwas";
      carpe noctem

      [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
      [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

      Kommentar

      Lädt...
      X