[PHP]sessions erzeugen

BadByte

Lt. Junior Grade
Registriert
Jan. 2006
Beiträge
298
hi all
die Frage hab ich in nem andern Thema schon mal gestellt, da hab ich aber irgendwie keine Antworten gekriegt(lag vieleicht daran, dass es nicht zum Thema passte ;) )

ok nochmal:

Kann mir jemand einen Beispiel code für ne PHP session geben?

Also am besten eigentlich 2. Einen wo eine session gestartet wird, und einer deklarierten Variable ein Wert zugewiesen wird, und ein Zweites, das den Wert der Variable ausgiebt.

Bei Googel find ich dazu leider nix brauchbare, jedenfalls nix verständliches, die sind immer so mit infos zugemüllt das man gar nix versteht, ich will ja "nur" nen Beispielcode!

clemix
 
AW: mit PHP sessions erzeugen

Hi!
Also zuerst muss eine Session gestartet werden.
Dies übernimmt die Funktion session_start().
Du musst nichts übergeben. Schreib einfach:
PHP:
<?php
session_start();
?>
Sessionübergreifende Variablen stehen im Array $_SESSION. Du kannst diese so zuweisen:
PHP:
<?php
$_SESSION['MeineVariable'] = "Hallo";
?>
Ausgeben kannst du sie so:

PHP:
<?php
echo $_SESSION['MeineVariable'];
?>

Dann musst du einfach einen normalen Link auf eine weitere Seite setzen. Dort musst du wieder die Session mit session_start() starten. Dann kannst du alle Inhalte des Arrays $_SESSION auslesen.
Um eine Session zu beenden gibst du folgendes an:

PHP:
<?php
session_unset();
session_destroy();
?>

Grüße

Edit:

Ein kleines Beispiel, in dem der Name angegeben wird und man dann damit begrüßt wird:

page1.php:
PHP:
<?php
session_start();
if (isset($_POST['username']) {
$_SESSION['username'] = $_POST['username'];
$_SESSION['last'] = date('d.m.Y');
}
?>
<form action="page1.php" method="post">
Bitte gib deinen Namen ein:
<input type="text" name="username">
<input type="submit" value="OK">
</form>

page2.php:
PHP:
<?php
session_start();
echo "Hallo, " . $_SESSION['username'] . "! Du warst das letzte Mal hier am " . $_SESSION['last'] . ".";
?>

Ist eigentlich nicht schwer zu verstehen. Du musst einfach auf dem gleichen Server erst die page1.php aufrufen und deinen Namen angeben.
So lange du den Browser nicht schließt, kannst du jederzeit beim Aufruf der page2.php mit deinem Namen begrüßt werden.
Beim schließen des Browsers wird die Session (meistens) beendet.
 
Zuletzt bearbeitet:
AW: mit PHP sessions erzeugen

ok, es funktioniert, aber er giebt immer, wenn ich das erste php-script aufrufe, das aus:



Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/httpd/vhosts/digital-dragons.de/httpdocs/test.php:1) in /home/httpd/vhosts/digital-dragons.de/httpdocs/test.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/httpd/vhosts/digital-dragons.de/httpdocs/test.php:1) in /home/httpd/vhosts/digital-dragons.de/httpdocs/test.php on line 2



aber er macht alles was man ihm sagt also erst weißt er der Variable einen WErt zu und präsentiert einen Link, dann giebt die Variable aus: Nur giebt er immer diesen lästigen text beim 1.Script aus, was bedeutet er?


hier mein script:

Code:
 <?php
 session_start();
$_SESSION['MeineVariable'] = "Hallo";
echo"<a href='test2.php'>klick</a>";
?>

und teilII:
Code:
<?php
  session_start();
echo $_SESSION['MeineVariable'];

?>
 
AW: mit PHP sessions erzeugen

das session_start(); muss vor JEDER Ausgabe im Script gesetzt werden.

Setz das ganz nach oben am Script ohne Leerzeichen am Anfang etc.
 
AW: mit PHP sessions erzeugen

oh danke, genau des war des problem, was ein " " so alles in PHP ausmachen kann^^
 
Zurück
Oben