[Variablen] Problem mit Session-Variablen

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

  • [Variablen] Problem mit Session-Variablen

    Es gibt zwar hier einige Themen die ähnliche Probleme beschreiben, jedoch half mir bisher keines weiter!

    Zum Problem selbst:

    Ich deklariere in einer Datei session-Variablen auf die ich auch "meistens" (leider) Zugriff habe.

    Erst mal der Code:

    Datei - uploading.php

    <?php
    session_start();
    session_register( "user_id" );
    session_register( "gfxpfad" );
    session_register( "plani" );
    ...

    Datei - game.php

    <?php
    session_start();
    if($planet==0)
    {
    $plani=1;

    // Also wird ja der session Variablen der Wert 1 zugewiesen //

    Datei - game_gebaude.htm

    <frame name="game_anzeige" marginwidth="0" marginheight="0" scrolling="auto" noresize src="gebaude.php">
    ...

    Datei - gebaude.php

    <?php
    session_start();
    ...
    include( $base_domain . "gebaude_detail.php?geb=Verwaltung" );
    ...

    Datei - gebaude_detail.php

    <?php
    session_start();
    echo $geb . " - " . $plani . " - ";
    if(@mysql_connect($host, $user, $pwd))
    {
    if(@mysql_select_db($dbname))
    {
    $p_data = @mysql_query("SELECT user_ID, plani_ID, kol_nr FROM game_u_plani WHERE user_ID=\"$user_id\" AND kol_nr=" . $plani );
    if($p_data)
    {
    while($row = mysql_fetch_row($p_data))
    {
    $planeten_ID=$row[1];
    echo $plani . " - " . $planeten_ID;
    }
    }

    In dieser letzten Datei hab ich jetzt folgendes Problem:
    Die Variable $plani hat keinen Wert (theoretisch sollte eine 1 drinstehen)

    was jetzt das interessante an der ganzen Sache ist: Weiter unten im Script, steht folgende Zeile:

    <a href="gebaude_detail.php?geb=<?php echo $geb_name; ?>&funk=hilfe" target="_self" style="text-decoration: none" onmouseover="window.status='Hilfe und Informationen'; return true" onmouseout="window.status=' '">

    Wenn nun über diesen Hyperlink die Datei gebaude_detail.php erneut aufgerufen wird (wo ja das Script wieder von vorne abgearbeitet wird) hat die Variable $plani den verlangten Wert 1.

    Um eine eventuell auftretenden Frage gleich vorweg zu beantworten: Die Variable $plani wird nirgends neu zugewiesen sondern lediglich mehrfach ausgelesen / benutzt.

    Die einzige mögliche Ursache wäre noch, das das Script gebaude_detail.php per include in eine Tabelle eingefügt wird, wo sich dann die Frage stellt, wie eine evtl. Lösung aussehen würde.

    Mit Dank im Vorraus

    Winni

  • #2
    bitte verwende kein session_register() mehr.

    mache es so ....
    datei1.php
    PHP-Code:
    session_start()
    $_SESSION['userid'] = 1;
    $_SESSION['username'] = 'hans mustermann';
    echo 
    '<a href="datei2.php"></a>'
    datei2.php
    PHP-Code:
    session_start()
    echo 
    'userid: '.$_SESSION['userid'] .'<br />';
    echo 
    'username: '.$_SESSION['username'] .'<br />'
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      Danke, für die prompte Antwort!

      Werd das mal morgen ausprobieren, und mich dann nochmal melden!

      Aber so als Frage: Warum soll session_register nicht verwendet werden? Welche Nachteile entstehen dadurch?

      Winni

      Kommentar


      • #4
        das ist die alte syntax
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar

        Lädt...
        X