Sessionwerte mit Form neu zuweisen

LongDonJohn

Mitglied
Hallo zusammen,

habe ein kleines Problem, bei dem ich nicht weiterkomme.

Ich habe eine Seite, bei der die Anzahl von ausgewählten Artikeln in einer Session gespeichert wird. Im Warenkorb soll man die Anzahl der Artikel in einer Textbox editieren können, und wenn man auf "Änderungen speichern" klickt, soll der neue Wert in der Session gespeichert werden und direkt wieder der aktualisierte Warenkorb angezeigt werden.

Textbox mit editierbarem Anzahlwert ist kein Problem, aber wie bekomme ich den neuen Wert in die Session und direkt wieder angezeigt?

Hoffe, ihr könnt mir helfen...
 
Wenn die „direkte“ Anzeige ohne merkbare Ladeprozess der Seite passieren soll, wirst du um eine clientseitige Lösung (mithilfe der Ajax-Technologie) nicht herumkommen.
 
Das ganze ist ja in eine Form eingepackt, und bei klick auf die Schaltfläche "Änderungen speichern" wird die gleiche Seite neu geladen...

Gibt es nicht sowas wie ne update-Funktion oder ähnliches, die beispielsweise durch ein onklick Ereignis ausgelöst wird?
 
Es gibt im Deutschen auch eine Wort für das englische Wort „form“: Formular.

Zu deinem Anliegen: Es kommt ganz darauf an, ob die Aktualisierung der Daten in Echtzeit geschehen soll oder ob ein Neuladen des Dokuments ausreicht.
 
Danke - das Wort Formular war mir eben nicht eingefallen... Habe heute wirklich ein Brett vorm Kopf!

Ein Neuladen der Seite reicht völlig aus, um die Daten zu aktualisieren.
 
Dann sollte das Ganze eigentlich kein Problem sein. Es müssen lediglich die geänderten Werte mit den Artikeln in Verbindung gebracht werden. Oder ist es das, was du nicht schaffst?
 
Hier mal ein der Quelltext auszugsweise:

Die Seite verweist auf sich selbst:

HTML:
<form action="index.php?men1=04&men2=11" method="post">

<table><tr>
<td><input type="text" name="anz" maxlength="2" class="anz_box" value="<?php $_SESSION['buch1']; ?>"></td>
</tr></table>

<input type="submit" name="submit" value="Änderungen speichern">
</form>

In $_SESSION['buch1'] ist die gewählte Anzahl gespeichert.

Wenn ich nun einen neuen Wert eingebe und auf "Änderungen speichern" klicke, läd sich die Seite neu, aber mit dem alten Wert....
 
Wie wär’s mit Folgendem:
HTML:
<form action="foobar" method="post">
	<input type="text" name="anzahl[buch1]" value="<?php echo $_SESSION['buch1']; ?>">
	…
</form>
PHP:
<?php

	foreach( $_POST['anzahl'] as $key => $value ) {
		$_SESSION[$key]['anzahl'] = $value;
	}

?>
 
Dieser Code kann nicht funktionieren. Vor der Variable fehlt das echo. Also wird der Inhalt des Textfeldes leer sein .
PHP:
<form action="index.php?men1=04&men2=11" method="post">

<table><tr>
<td><input type="text" name="anz" maxlength="2" class="anz_box" value="<?php echo $_SESSION['buch1']; ?>"></td>
</tr></table>

<input type="submit" name="submit" value="Änderungen speichern">
</form>

greez daniel
 
Zurück