PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Session problem



Nookie
05.11.2010, 15:05
Hallo ... ich suche mal wider Hilfe bei euch bevor ich noch ne Tastatur kaputtkloppe "

Es geht um folgendes... ich habe eine kill_session.php in der folgendes steht:



<?PHP
session_destroy();
header('Location: ../index.php');
?>
Das heisst die session müsste jetzt dank session_destroy TOT sein!

in dem script wird dann gleich nach index.php weitergeleitet in der folgendes steht:



<?PHP

if(false === @session_start())
{
include "shop/mysql_connectinfo.inc.php";
$korb = @mysql_query("SELECT `idnr` FROM `warenkorb` ORDER BY id DESC");
$korb = mysql_fetch_array($korb);
echo "<br/><br/>$korb[0]<br/>";
$session_nr = $korb[0] + 1;
echo "<br/><br/>$session_nr<br/>";
session_start();
$_SESSION["ID"] = $session_nr;
}
?>
Also wenn eine Session läuft soll keine neue eingeleitet werden... das geht schon mal super...

aber Wenn die session wie hier im bsp zuvor gekillt worden ist wird keine neue initialisiert... warum?

mfg

inout
05.11.2010, 15:18
Ich rate einfach mal: führe vor dem session_destroy noch ein session_start aus.

Nookie
05.11.2010, 15:29
Mhh, hab ich leider erfolglos schon versucht :(
hat nichts gebracht =)

echoslider
06.11.2010, 11:46
wie neu einleiten hä?

session_start() startet ne session. da sind dann keine werte drin. die musst du erst eintragen. z.b $_SESSION['id']="4";

wenn du dann ne komplett neue seite hasst. neues fenster und so(naja nur den browser nicht komplett beenden und neu starten)... und du dann wieder session_start() machst. dann wird da nix neu erstellt oder so.. der ID wert ist dann immer noch 4... der wert verschwindet nicht... nicht bist du session_destroy machst.

session_start(); trägt man wenn man mit sessions arbeiten will im script immer in der 2. zeile ein... also unter <? oder <?php

und wenn 2 leute von verschiedenen computern und so... session_start() machen. und die beide einen wert für id eintragen. dann ist das auch wieder pro computer unterschiedlich. also so ersetzt sich da auch nix oder so...

wenn du mehrere waren speichern lassen willst dann würde ich sagen du erstellst einfach in der session ne variable liest die immer wieder neu aus wenn du ne ware hinzufügen willst. fügst die neue wahre hinten dran und speicherst die session variable wieder.

irgend ein trennzeichen nehmen wie z.b | und mit explode kannste dann die einzelnen waren auslesen. bzw die ids der waren....


also wenn der text keinen sinn macht oder falsch ist als antwort. kp xD... hatte grad ziemlich nasenbluten das ich ins krankenhaus musste weil ich fast umgekippt bin.. dann sry..noch paar nebenwirkung von der betäubung und vom zuschweißen xD und ich extrem müde bin.