Seite 1 von 1

Sessions zerströren sich selbst 2

Verfasst: 12.09.2005 09:32
von witzigerkiller
So, weniger code:

login.php

Sessions werden so registriert:

Code: Alles auswählen

while($daten = mysql_fetch_assoc($prufnow))
    {
        $_Session['id'] = $daten['id'];
        $_Session['Vorname'] = $daten['Vorname'];
        $_Session['Nachname'] = $daten['Nachname'];
        $_Session['Nickname'] = $daten['Nickname'];
        $_Session['Passwort'] = $daten['Passwort'];
        $_Session['Mail'] = $daten['Email'];
        $_Session['ICQ'] = $daten['ICQ'];
        $_Session['Geburtstag'] = $daten['Geburtstag'];
        $_Session['Geschlecht'] = $daten['Geschlecht'];
        $_Session['Hobbys'] = $daten['Hobbys'];
        $_Session['Land'] = $daten['Land'];
        $_Session['ip'] = $daten['ip'];
        $_Session['Status'] = $daten['STATUS'];
    }   
index.php

wie man soll, ist das ganz am anfang:

Code: Alles auswählen

<?PHP
Session_start();
?>
und so werde die sessions ausgelesen:

Code: Alles auswählen

<?PHP
if ($_Session['Status'] == "member")
{
     echo "menues/usermenue.php";
}
else
{
    if ($_Session['Status'] == "admin")
    {
        echo "menues/adminmenue.php";
    }
    else
    {
        echo "<form action=index.php?inhalt=login/login name=Login method=post>
        <input type=text name=logname size=15>
        <br />
        <input type=password name=passname size=15><br /><br /> 
        <input type=submit name=login value=Login />
        &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
        <a href=index.php?inhalt=register/registrieren>Register</a>
        </form>";
    }
}
?>
Wie gesagt wenn ich mich einlogge erscheint einmal das menü. wenn ich dann auif eine andere seite wechsel, dann ist das menü wieder weg und die sessions gelöscht.
Kann mir das einer erklären?


Bitte diesmal nicht schließen, ist echt wichtig

Verfasst: 12.09.2005 12:37
von Blutgerinsel
Steht session_start(); in jeder Datei am Anfang bzw. wird diese in jeder File am Anfang includiert?

Nur Files in denen session_Start(); initiert wird, sind auch die Session Vars verfügbar

Verfasst: 12.09.2005 13:55
von witzigerkiller
danke, dir aber ich habe den fehler muste $_session nur in $_SESSION wandeln. aber ich weiß net warum

Verfasst: 12.09.2005 14:06
von mristau2k5
Das liegt daran, dass PHP groß- und kleinschreibung unterscheidet

$test
$Test
$TEST

sind alles verschiedene Variablen

Verfasst: 12.09.2005 14:07
von witzigerkiller
ok danke

Verfasst: 12.09.2005 14:23
von witzigerkiller
habe wieder ein billiges prob:

Code: Alles auswählen

$newsselect = "Select * From news order by id desc limit 5";

$now = mysql_query($_newsselect);

while ($news = mysql_fetch_assoc($now))
der mecker, das mysql_fetch_assoc nicht valide ist, und kein myql befehl ist.

Ich kannmir denken, lieht am newsselect, aber hmm, ich will geordnet, von id haben, das habe ích, dann das limit 5 ? stimmt da im code was net, oder mus es wo anders dran liegen?

Verfasst: 12.09.2005 17:04
von fanrpg

Code: Alles auswählen

$newsselect = "Select * From news order by id desc limit 5"; 

$now = mysql_query($newsselect); 

while ($news = mysql_fetch_assoc($now))

Verfasst: 12.09.2005 18:26
von mristau2k5
witzigerkiller hat geschrieben:habe wieder ein billiges prob:

Code: Alles auswählen

$newsselect = "Select * From news order by id desc limit 5";

$now = mysql_query($_newsselect);

while ($news = mysql_fetch_assoc($now))
der mecker, das mysql_fetch_assoc nicht valide ist, und kein myql befehl ist.

Ich kannmir denken, lieht am newsselect, aber hmm, ich will geordnet, von id haben, das habe ích, dann das limit 5 ? stimmt da im code was net, oder mus es wo anders dran liegen?
hmm, versuchs mal mit

Code: Alles auswählen

$newsselect = "SELECT * FROM news ORDER BY id DESC LIMIT 5";

$now = mysql_query($newsselect);
// wenn du ne Verbindungsvariable für mysql hast, kann die im query auch verwendet werden mysql_query($_newsselect, $verbindung);

while ($news = mysql_fetch_assoc($now))
Man sollte mysql Befehle eigentlich immer groß schreiben, weil das alles fest vorgegebene Worte sind und dann Tabellen und sonstiges entweder klein, oder nur mit großen Anfangsbuchstaben

hier muss news und id genauso geschrieben sein, wie es in der db auch ist, am einfachsten ist es, mit Variablen oder Konstanten zu arbeiten, vor allem bei Tabellen.