allgemeine fragen zu sessions / sessions mit php user

Kurt Cobain

Erfahrenes Mitglied
tag mal wieder

hab wie schon erwähnt n paar allgemeine fragen zu sessions:

1. mit session_id() kriegt man ja die sessionid,
ist das die id aus der mysql tabelle und hat ein benutzer
immer die gleiche id

2. wie kann man dann mit der sid einen benutzer identifizieren

3. wie übergibt dieses forum die sid?

4. win kann man dann die sessionid verwenden wenn man ein formular hat , dass in einem
hidden button den usernamen posten soll muss man das irgendwie som machen, wie
echo where( $_GET['sid'] = sessionid des users) oder so


meine wichtigste frage ist die:
wenn sich einer eingeloggt hat, dann ist sein name doch in $_SESSION['user']
gespeichert.
jetzt hab ich da ein link, der zu einem formular geht:
Code:
<a href="formular.php?sid=<? echo session_id(); ?>">eintragen</a>

auf formular.php ist dann ungefähr so was:
Code:
<form action="post.php" method="post">
<input type="hidden" name="user" value="">
<input type="Submit" name="submit" value="submit">
</form>
bei demm hidden button soll dann irgendwie durch die sessionid der user auasgelesen
werden, wie macht man das?soll dann irgendwie so was sein:
Code:
<input type="hidden" name="user" value="Admin">




wär euch echt sehr dankbar wenn ihr mir helft
 
Guck mal auf Deiner Tastatur, da finden sich 2 Shift-Tasten. Die sind nicht dazu da ignoriert zu werden.

Jetzt zum Thema:
Die SessionID kommt nicht aus einer Datenbank, und die ist bei jedem Verbindungsaufbau anders.
Also wenn ich Deine Website heute besuche bekomme ich eine SessionID, und morgen hab ich eine andere.
Die Session ist so lange gueltig wie der Browser geoeffnet ist.
Wenn ich also meinen Browser schliesse und wieder auf Deine Website gehe, bekomme ich eine neue SessionID.

In der Regel wird die SessionID ueber Session-Cookies uebergeben, so ist es auch hier der Fall.
 
du musst in deinem loginscript jedem User eine Id geben und sie genauso wie mit dem user namen.
zb.
Code:
<?php
//hier müsste das conntecten zu db hin


//Auslesen der ID
$sql = "SELECT id FROM benutzerdaten WHERE user = 'der benutzername'";
$sql2 = mysql_query($sql);
$sql3 = mysql_fetch_array($sql2);
$id = $sql3['id'];


//Weitergeben der ID

$_SESSION['id'] = $id;

?>

nun kannst du in jeder datei den befehl
Code:
<?php echo $_SESSION['id']; ?>
verwenden um die id des user auszugeben

Es muss aber immer <?php session_start() ?> am anfang jeder datei stehen
 
Es hilft ausserordentlich in Sachen Lesbarkeit wenn man diese Taste richtig verwendet.
Und ausserdem hilft es den hohen Qualitaetsstandard von tutorials.de aufrecht zu erhalten.
 
Zur Frage 1: Die session_id()-Funktion liefert und/oder setzt die aktuelle Sitzungs-ID. Woher die zu setzende Sitzungs-ID kommt, ist egal. Mit der session_regenerate_id()-Funktion lässt sich beispielsweise eine neue generieren. Aber auch die Wiederaufnahme einer noch bestehenden Sitzung ist durch das setzen der Sitzungs-ID möglich. Siehe dazu auch den Abschnitt „Übermittlung der Session-ID“.

Zur Frage 2: Eben durch die Identifikation Sitzung-ID einer bereits existierenden bzw. gespeicherten Sitzung lässt sich ein Benutzer wiedererkennen. Allerdings heißt dies nicht zwangsläufig, dass tatsächlich die selbe Person vor dem Computer sitzt. Denn jeder, der im Besitz dieser Sitzungs-ID ist, würde wiedererkannt.

Zur Frage 3: Dieses Forum übergibt die Sitzuns-ID in einem HTTP-Cookie (s. Kapitel: Cookies). Dies geschieht jedoch je nach Einstellung automatisch. Auch nur eine Übergabe der Sitzungs-ID per URL-Parameter ist möglich (vgl. Abschnitt „Laufzeit Konfiguration“).

Zur Frage 4: Leider verstehe ich den Inhalt dieser Frage nicht. Falls sie immernoch besteht, bitte ich um eine detailliertere und vor allem verständliche Ausführung.

Zur wichtigsten Frage: Der Name eines Benutzers ist nur dann in der $_SESSION['user']-Variable verfügbar, wenn sie dort vorher vermerkt wurde. Den Rest der Frage verstehe ich jedoch wieder nicht.
 
Zurück