har en gästbok som består av en sida där man både postar mess och kollar i gästboken. När man skickar ngt ifrån formuläret till den egna sidan så går det alldeles utmärkt, men om jag sedan tar refresh i min browser så vill den skicka informationen igen vilket leder till att jag får ännu ett likadant inlägg i min gästbok.
Jag har testat att sätta mina skickade variabler till NULL efter det att dom lagrats i databasen men det hjälper inte, det frågas fortfarande om jag vill ta retry.....
Ska man "förstöra" värdena som skickats eller hur ska man göra?
Det är troligen för att du submittat data via POST. Du kan lösa det genom att ha en separat PHP-sida för själva postningen till databasen som sen redirectar till gästbokssidan.
Warning: Cannot add header information - headers already sent by (output started at /customers/aptrut.com/aptrut.com/httpd.www/v3/gbtitta.php:8) in /customers/aptrut.com/aptrut.com/httpd.www/v3/gbtitta.php on line 48
fick jag istället......
jag kanske inte var tillräckligt tydlig så jag gör ett nytt försök:
sidan gbtitta.php laddas. ett inlägg görs och gbtitta.php laddas igen. inlägget skrivs till databasen och sedan skrivs alla inlägg ut. men det är sen det uppstår problem. om man tar refresh efter att man har gjort ett inlägg kommer det att postas igen och igen och igen så länge man gör refresh. någon slags tidsbegränsning av hur ofta man får posta nya meddelanden vill jag inte ha.
[php]
//----------skickar värden till databas om variabler tagits emot----------------
Före en header får man inte skicka något till webbläsaren. Ingen HTML, ingen echo eller print. Ej heller någon tomrad eller mellanslag före PHP-taggen.
Lägg din kod för att spara överst i skriptet, och se till att du inte skickar något till webbläsaren före headern.
En tomrad eller mellanslag före den inledande PHP-taggen resulterar i att något skickas till webbläsaren.
Inkluderar du en fil får du dessutom se till att det, i den inkluderade filen, inte finns något tomtecken efter den avslutande PHP-taggen.
Har du en inkluderad fil så sätt markören efter den avslutande PHP-taggen och tryck upprepade gånger på delete så du är säker på att där inte finns något.
Kan du visa hur din kod ser ut nu, fram till och med header() ?
well....vad ska man säga. den laddar typ för alltid.... det kommer inte ngn sida alls. har dubbelkollat och trippelkollat alla inblandade scriptfiler. det finns inga mellanslag eller extra rader före eller efter php-taggarna.
OK! nu funkar det men problemet med att om man bara fyllde i sitt namn och skickade och sen tog refresh kvarstod. fick löst det med en enkel else if-sats: