Autor |
Nachricht |
ENIXone
Threadersteller
Dabei seit: 25.02.2007
Ort: Sundern
Alter: 37
Geschlecht:
|
Verfasst Di 02.10.2007 10:11
Titel PHP-SESSION aktualisieren ? |
|
|
Hallo MGUser!
ich bastel gerade an einem Bestellformular. Jedoch habe ich ein Problem mit der PHP Session, da ich mich da neu mit befasse habe ich da noch net sooooo die Ahnung von.
Auf der ersten seite ist das Formular bei dem man verschiedene Werte eintragen kann. Diese werden mit Javascript autmatisch zusammengezählt. So das halt der Preis direkt dort steht.
Wenn man jetzt auf bestellen geht, wird alles in der session gespeichert.
Ich lande nun auf einer Bsp Seite von mir wo ich die eingabe nochmal überprüfen will. Beim ersten mal geht das ganz gut. Jedoch wenn ich dann mit dem "Zurück" Button vom Browser wieder in das Formular gehe und dort was änder übernimmt er meine neuen Werte nicht wenn ich wieder auf bestellen klicke.
Zur übersicht nochmal:
Formular -> Bestellen -> neue Seite, werte werden richtig übernommen -> Zuückbutton -> Neue Werte im Formular -> bestellen -> Werte werden nicht übernommen, die alten bleiben.
Hier der oberer Teil des Formulars:
Code: | if($buy == "Bestellen"){
session_start();
$_SESSION["breite"] = $breite;
$_SESSION["hohe"] = $hohe;
$_SESSION["produkt"] = "Plakat";
$_SESSION["menge"] = $menge;
$_SESSION["dpi"] = $dpi;
$_SESSION["laminat"] = $laminat;
$_SESSION["netto"] = $netto;
$_SESSION["brutto"] = $brutto;
echo "<script language=\"JavaScript\">
window.location.replace('buy.start.php?".session_id()."');
</script>
";
}
?> |
und das Skript von buy.start.php:
Code: | <?php
session_start();
?>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8" />
<meta name="generator" content="Adobe GoLive" />
<title>Unbenannte Seite</title>
</head>
<body bgcolor="#ffffff">
<?php
echo "breite".$_SESSION["breite"]."<br>";
echo "hohe".$_SESSION["hohe"]."<br>";
echo "Produkt".$_SESSION["produkt"]."<br>";
echo "menge".$_SESSION["menge"]."<br>";
echo "dpi".$_SESSION["dpi"]."<br>";
echo "laminat".$_SESSION["laminat"]."<br>";
echo "netto".$_SESSION["netto"]."<br>";
echo "brutto".$_SESSION["brutto"]."<br>";
?>
</body>
</html> |
Weiß einer wie ich dies verhindern kann?
Mfg Paul
Zuletzt bearbeitet von ENIXone am Di 02.10.2007 10:14, insgesamt 1-mal bearbeitet
|
|
|
|
|
chrikle
Dabei seit: 02.05.2002
Ort: NRW
Alter: 47
Geschlecht:
|
Verfasst Di 02.10.2007 10:17
Titel
|
|
|
Hallo !
Setze doch mal beim Forumlar-Dokument ebenfalls als erstes die Session.
Code: | <?php
session_start();
?> |
Gruß
Chris
|
|
|
|
|
Anzeige
|
|
|
choise
Dabei seit: 01.02.2007
Ort: Würzburg
Alter: 35
Geschlecht:
|
Verfasst Di 02.10.2007 10:21
Titel
|
|
|
ja, und davor kannst du ja noch ein
session_destroy
setzten, also mit ner if abfrage, falls schon session werte existieren.
|
|
|
|
|
Kraat
Dabei seit: 05.10.2006
Ort: Köln
Alter: 42
Geschlecht:
|
Verfasst Di 02.10.2007 10:21
Titel
|
|
|
Ich würde sagen, dass Du die Session neu initalisierst, was Du ja auch brav machst. Dann würd ich erst mal schauen ob die Session überhaupt gesetzt ist! Kann nämlich sein das wenn Du auf den "zurück" Button klickst , eigentlich in den Zustand der nicht gesetzten Session zurück kehrst; Somit hätte die Session nach dem 2.ten Absenden immer noch die Werte vom ersten Mal.
Also mein Tipp, es noch früh und ich werde ausschweifend. Schau ob die Session überhaupt gesetzt ist. Wenn nicht dann initialisieren ^^
Code: |
<?
if(isset($_SESSION))
{
// juhu
}
else
{
// ist ja doof
}
?>
|
|
|
|
|
|
ENIXone
Threadersteller
Dabei seit: 25.02.2007
Ort: Sundern
Alter: 37
Geschlecht:
|
Verfasst Di 02.10.2007 10:21
Titel
|
|
|
hm danke für denn tip, aber das hat an meinem problem leider nicht geändert. Das selbe wie vorher.
Gruß Paul
|
|
|
|
|
ENIXone
Threadersteller
Dabei seit: 25.02.2007
Ort: Sundern
Alter: 37
Geschlecht:
|
Verfasst Di 02.10.2007 10:26
Titel
|
|
|
also ich habs jetzt so gemacht :
Code: | <?php
if(isset($_SESSION))
{
session_destroy();
}
?>
<?php
if($buy == "Bestellen"){
session_start();
$_SESSION["breite"] = $breite;
$_SESSION["hohe"] = $hohe;
$_SESSION["produkt"] = "Plakat";
$_SESSION["menge"] = $menge;
$_SESSION["dpi"] = $dpi;
$_SESSION["laminat"] = $laminat;
$_SESSION["netto"] = $netto;
$_SESSION["brutto"] = $brutto;
echo "<script language=\"JavaScript\">
window.location.replace('buy.start.php?".session_id()."');
</script>
";
}
?> |
Dabei ist folgendes auf der Formularseite herausgekommen:
Code: | Warning: session_destroy() [function.session-destroy]: Trying to destroy uninitialized session in /home/sektor8/public_html/kunden/test/form.paper.php on line 3
|
gruß paul
|
|
|
|
|
chrikle
Dabei seit: 02.05.2002
Ort: NRW
Alter: 47
Geschlecht:
|
Verfasst Di 02.10.2007 10:30
Titel
|
|
|
Code: | <?php
if(isset($_SESSION))
{
session_destroy();
}
else
{
session_start();
}
?>
<?php
if($buy == "Bestellen"){
$_SESSION["breite"] = $breite;
$_SESSION["hohe"] = $hohe;
$_SESSION["produkt"] = "Plakat";
$_SESSION["menge"] = $menge;
$_SESSION["dpi"] = $dpi;
$_SESSION["laminat"] = $laminat;
$_SESSION["netto"] = $netto;
$_SESSION["brutto"] = $brutto;
echo "<script language=\"JavaScript\">
window.location.replace('buy.start.php?".session_id()."');
</script>
";
}
?> |
Mach mal so.
Gruß
Chris
|
|
|
|
|
Backware
Dabei seit: 09.12.2004
Ort: bei Köln
Alter: 38
Geschlecht:
|
Verfasst Di 02.10.2007 10:31
Titel
|
|
|
Code: | <?php
session_start();
if(isset($_SESSION))
{
session_destroy();
}
?>
<?php
if($buy == "Bestellen"){
$_SESSION["breite"] = $breite;
$_SESSION["hohe"] = $hohe;
$_SESSION["produkt"] = "Plakat";
$_SESSION["menge"] = $menge;
$_SESSION["dpi"] = $dpi;
$_SESSION["laminat"] = $laminat;
$_SESSION["netto"] = $netto;
$_SESSION["brutto"] = $brutto;
echo "<script language=\"JavaScript\">
window.location.replace('buy.start.php?".session_id()."');
</script>
";
}
?> |
Zuletzt bearbeitet von Backware am Di 02.10.2007 10:35, insgesamt 1-mal bearbeitet
|
|
|
|
|
|
|
|
Ähnliche Themen |
User- und Session-ID per Cookie, Session oder in URL durchre
session id?
session übergeben???
PHP - Probleme mit der SESSION
DVD- Session brennen auf MAC?
problem mit session PHP
|
|