Har et problem som jeg ingen ide har om hvordan jeg skal løse:
Jeg har lavet sådan at man kan gå frem og tilbage i bestillingen, når man bestiller varer. Men når man kommer til sidste side (4/4) så når man trykker på tilbage, så går den frem i stedet. Dette skyldes at i de andre har jeg brugt action = $php_self, men i den sidste, sendes infoen videre til en anden fil. Det er svært at forklare, så hvis nogen gider og hjælpe, er det muligt at teste hvad jeg mener. Ved at gå ind på:
www.tymo.dk
Tilføje et par produkter til kurven og så ellers gå til bestillingen. Så kommer i igennem 4 trin, det er det sidste der ikke virker. (Bare tryk vis koden)
Håber det er nok info til at kunne få hjælp, da dette er et af de 2 eneste problemer der er tilbage på siden (som jeg ved af ).
Mvh
Lasse Staal
Hehe, nu håber jeg ikke at jeg har bestilt et eller andet :p
Ej, her er hvad du f.eks kunne gøre.. jeg har selv brugt det på en side jeg lavede engang, ved ikke hvor godt det er, men det virker... Nok også lidt primitivt
<?
// php vaerket :)
$side = $_GET['side'];
$direction = $_POST['direction'];
if (!$direction) $direction = 'Fremad';
if ($direction == 'Tilbage') $side = $side-2;
// find det gamle indhold fra de forrige sider
$prev_content = $_POST['prev_content'];
$prev_content = unserialize($prev_content);
// det nye indhold
$content = $_POST;
unset($content['direction']);
unset($content['prev_content']);
// put det gamle indhold ind i det nye
if (is_array($prev_content)) {
foreach ($prev_content as $key => $value) {
$content[$key] = $value;
}
}
// koer det igennem og tjek hvis det lige skal opdateres, eller slettes indhold fra indholdet
foreach ($_POST as $key => $value) {
if ($content[$key] != $value) {
if ($value) {
$content[$key] = $value;
} else {
unset($content[$key]);
}
}
}
/*
saa kan vi jo f.eks. sige, at hvis side er ligmed int(4) kan vi goere det vi skal, og
laengere nede kan vi jo disabled de knapper vi vil, osv...
altsaa... naar vi naar side 4, indsaettera vi, kan jo goeres paa side 5
*/
if ($side == 4) {
// indsaet i db, eller koeb eller andet
}
?>
<!-- selve side indholdet -->
<form action="denne_side.php?side=<?=($side+1)?>" method="post">
<textarea name="prev_content" style="display:none;"><?=serialize($content)?></textarea>
<?
// skift mellem sider
switch ($side) {
case 1:
// vis side 1
break;
case 2:
// vis side 2
break;
}
?>
<input type="submit" name="direction" value="Tilbage">
<input type="submit" name="direction" value="Fremad">
</form>
Det er noget simpelt, kastede det lige sammen, haaber det virker
Mvh Bob