/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Skifte værdi på variabel
Fra : Nils Thøger Møller


Dato : 07-05-03 23:33

Hej NG

Jeg har en gæstebog, der bliver ved med at poste, hvis jeg trykker F5
"refresh" i min browser.
Går jeg væk fra siden, efter jeg har postet, og vender tilbage igen, gør den
det ikke.

Fejlen er fundet, i nedenstående kode, men ikke løst.

if($navn)
{
$dato = date( "Y:m:d-H:M:s", time() );
mysql_query("INSERT INTO guestbook (navn, dato, email, fritekst) VALUES
('$navn', '$dato', '$email', '$fritekst')");
unset($navn);
}

Denne if sætning skal kun kørers igennem første gang, altså når man skriver
i sin form for at poste det.
Hvordan sætter jeg variablen $navn til "ikke noget" ? Lige som den er,
første gang man går ind på siden.

Jeg har prøvet med følgende metoder
unset($navn);
$navn = 0;
$navn = null;
$navn = "";
$navn = ("");


Med venlig hilsen
Nils Thøger

P.S. Er nybegynder inden for PHP




 
 
Jakob Nicolajsen (08-05-2003)
Kommentar
Fra : Jakob Nicolajsen


Dato : 08-05-03 18:20

> Jeg har en gæstebog, der bliver ved med at poste, hvis jeg trykker F5
> "refresh" i min browser.
Ser ud til at du sender dataene med GET, med mindre den spørger dig om du vil
sende dataene igen(browseren) ret formen til method="post"
> Fejlen er fundet, i nedenstående kode, men ikke løst.
>
> if($navn)
> {
> $dato = date( "Y:m:d-H:M:s", time() );
> mysql_query("INSERT INTO guestbook (navn, dato, email, fritekst) VALUES
> ('$navn', '$dato', '$email', '$fritekst')");
> unset($navn);
> }
hvad med at tjekke $_POST i stedet, og derefter om både navn og fritekst er
udfyldt:

if($_POST){
if($_POST[navn]!="" and $_POST[fritekst]!="")
{
$dato = date( "Y:m:d-H:M:s", time() );
mysql_query("INSERT INTO guestbook (navn, dato, email, fritekst) VALUES
('$navn', '$dato', '$email', '$fritekst')");
//send brugeren til samme side, så der ikke kommer en vil du sende dataene
igen-besked når brugeren refresher
Header("Location: $_SERVER[PHP_SELF]");
exit;

}
}

--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! => http://www.html.dk/tutorials

Søg
Reklame
Statistik
Spørgsmål : 177519
Tips : 31968
Nyheder : 719565
Indlæg : 6408650
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste