PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Session klappt nicht


Spike15
09.11.2004, 18:04:54
Hoi leutz, ich habe als PHP-Anfänger mich mal an Sessions gewagt und gleich nen loginscript probiert

Nunja in der index ist ein Formular das an login geschickt wird dort sollen die daten geprüft werden, wenn es richtig ist kommt dort ein link wieder auf die index.php wo dann aber nicht das formulat kommen soll sondern der einlogg befehl der nur kommt wenn man eingeloggt ist, jedoch geht das net bei mir so richige

kkönnt ihr mir da mal helfne??

hier der Code:
<?
session_start();
if ($_SESSION["user"]){
echo "Hallo $user, freut mich das du eingeloggt bist<br>";
echo "<a href="logout.php">Logout</a><br>";
echo "Dieser Text wird nur angezeigt weil du eingeloggt bist.<p>";
echo "Okay, es wird bald ein neuer Text kommen";
}
else {
?>
<html>
<body></html><form action="login.php" method="post">
Name:<input name="user"><br>
Passwort:<input type="password" name="pw"><br>
<input type="submit">
</form>
</body>
</html>
<? } ?>

dirter
09.11.2004, 18:19:33
hi

du hast aber auf der login seite schon session_register("user"); geschrieben, oder?

und zeig mal die stelle wo die session_var nen wert bekommt. also poste mal das komplette script.

aber bitte im <code> tag

viele grüße

Spike15
09.11.2004, 19:31:19
Okay danke dir, also ich habe das Porb schon gelöst, danke!

dirter
09.11.2004, 19:40:54
hi

und wie wenn man fragen darf?


viele grüße

xabbuh
10.11.2004, 09:14:04
Original geschrieben von dirter
du hast aber auf der login seite schon session_register("user"); geschrieben, oder?

session_register ist veraltet. So ist es richtig:

<?php
$_SESSION['user'] = 'foo';
?>

dirter
10.11.2004, 14:25:16
Original geschrieben von xabbuh
session_register ist veraltet. So ist es richtig:


aber erst seit PHP5 :P

xabbuh
10.11.2004, 16:30:54
Original geschrieben von dirter
aber erst seit PHP5 :P
Das erklär jetzt mal genauer.

Yzerman
10.11.2004, 16:54:48
Wüsste ich auch gerne. Funktionierte bei mir auch schon so unter 4.3.X

xabbuh
10.11.2004, 17:02:11
Original geschrieben von Yzerman
Wüsste ich auch gerne. Funktionierte bei mir auch schon so unter 4.3.X

Deswegen...

Wenn Sie wollen, dass ihr Script unabhängig von der Einstellung von register_globals funktioniert, müssen Sie stattdessen das Array $_SESSION verwenden, weil $_SESSION-Einträge automatisch registriert werden. Wenn Sie in Ihrem Script session_register() verwenden, funktioniert es nicht in Umgebungen, in denen die PHP-Anweisung register_globals deaktiviert ist.
php.net (http://de.php.net/session_register)

Und session_register wird schon seit Version 4.2.0 und nicht erst seit Version 5 standardmäßig deaktiviert.

dirter
10.11.2004, 19:13:13
hi

da unterlag ich dann wohl einem Irrtum.
Tschuldigung.

viele grüße