16. april 2005 - 19:22Der er
14 kommentarer og 2 løsninger
Når man refresher siden i min gæstebog poster den beskeden igen
Hejsa..
Hvis man lige har skrevet en besked i min gæstebog, og refresher siden, så bliver den samme besked postet.. Eller hvis du bare går ind for at kigge på andre folks beskeder og refresher, så bliver den sidste besked postet endnu engang.. Hvad kan det skyldes?
Når man refresher en side, så bliver det samme http request udført igen. Dvs. at det samme POST request indeholdende beskeden bliver sendt igen.
Du kunne evt. lave et tjek på, om den sidst skrevne besked er magen til $_POST['besked']. Hvis de er forskellige, gemmes $_POST['besked'] helt normalt, og ellers bliver den ikke gemt.
Hmm forstår det desværre ikk helt.. Jeg har prøvet jeres script lidt, men forstår det ikk helt.. Tror også det er grunden til at jeg ikke kan få det til at virke :)
Kan i forklare det lidt dybere?
Synes godt om
Slettet bruger
16. april 2005 - 23:01#5
if ($_POST['add']) { mysql_query("INSERT INTO gaestebog (besked) VALUES ('$_POST[besked]') "); header("location: ". $_SERVER['HTTP_REFERER']); }
aco - Det som barklunds og wicez' kodestumper gør er, at de, efter at beskeden er blevet gemt i databasen, laver et redirect vha. en http header linie.
Det betyder, at hvis man refresher siden efterfølgende, så bliver der ikke lavet et nyt POST request.
Ingen point til mig i denne omgang. Jeg har trods alt blot forklaret, og samtidig kan jeg faktisk selv bruge den foreslåede løsning...så jeg skulle næsten give nogle point i stedet ;D
Du vil nok meget gerne have en exit; lige bagefter - Og endnu mere vil du flytte hele din <? ?> blok med mysql-tingene helt op øverst i din fil. Du kan nemlig ikke sende header efter du har sendt output.
Synes godt om
Slettet bruger
17. april 2005 - 10:23#11
Svar
Synes godt om
Slettet bruger
17. april 2005 - 10:23#12
men jeg vil ikke have point alene. Barklund har mindst fortjent halvdelen
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.