/ 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
Alert ved submit?
Fra : Martin Ploug


Dato : 28-09-05 17:23

Hej

Jeg har lavet en kontaktformular, som fungerer sammen med noget php.

Nu vil jeg gerne sikre mig, at der står noget i felterne, inden indholdet af
formularen
bliver sendt.

Jeg vil gerne lave det sådan at brugeren får en fejlbesked på samme side som
formularen.

Jeg har nedenstående php bare til at se, om der står noget i feltet.

if (!$navn)

{
echo "<div id='alert'><p>Indtast venligst dit navn.</p></div>";
exit;

}

Men fejlbedskeden bliver jo naturligvis vist, uden at man har foretaget sig
noget.
Meningen er jo at beskeden først skal komme, hvis der bliver klikket på
submit og feltet
er tomt. Hvad er det lige man skriver i php for at styre det?

Er det noget med if isset $navn; ?

På forhånd ta.

Med venlig hilsen
Martin



 
 
Martin Ploug (28-09-2005)
Kommentar
Fra : Martin Ploug


Dato : 28-09-05 18:02

> Jeg har nedenstående php bare til at se, om der står noget i feltet.
>
> if (!$navn)
>
> {
> echo "<div id='alert'><p>Indtast venligst dit navn.</p></div>";
> exit;
>
> }
>
> Men fejlbedskeden bliver jo naturligvis vist, uden at man har foretaget
sig
> noget.
> Meningen er jo at beskeden først skal komme, hvis der bliver klikket på
> submit og feltet
> er tomt. Hvad er det lige man skriver i php for at styre det?
>
> Er det noget med if isset $navn; ?
>
> På forhånd ta.
>
> Med venlig hilsen
> Martin


Ok, tror jeg selv fandt ud af det nu.

Submit knappen skal i dette tilfælde have name="submit"

if(isset($_POST['submit'])){
//if(isset('submit')){
if (empty($_POST['navn'])){
echo "<p>Indtast venligst dit navn.</p>";
} }

Fandt det her:
http://www.kcpug.org/site/modules/newbb/viewtopic.php?topic_id=180&forum=4


- Martin



Carsten Pedersen (29-09-2005)
Kommentar
Fra : Carsten Pedersen


Dato : 29-09-05 11:06

Hej, Martin

"Martin Ploug" <mploug@mail.tele.dk> skrev i en meddelelse
news:433ac22d$0$1791$edfadb0f@dread11.news.tele.dk...
> Hej
>
> Jeg har lavet en kontaktformular, som fungerer sammen med noget php.
>
> Nu vil jeg gerne sikre mig, at der står noget i felterne, inden indholdet
> af
> formularen
> bliver sendt.

Den gængse metode er at løse problemet clientside med JavaScript. Så kan du
sikre dig, at der ikke blot står noget i felterne, men også at det
indtastede overholder visse betingelser og i givet fald bede brugeren rette,
inden data sendes til videre behandling på serveren.

Mvh

C@rsten



Martin Ploug (01-10-2005)
Kommentar
Fra : Martin Ploug


Dato : 01-10-05 22:24


> Den gængse metode er at løse problemet clientside med JavaScript. Så kan
du
> sikre dig, at der ikke blot står noget i felterne, men også at det
> indtastede overholder visse betingelser og i givet fald bede brugeren
rette,
> inden data sendes til videre behandling på serveren.
>
> Mvh
>
> C@rsten
>
>

Ok, tak for det.

- Martin



Geert Lund (02-10-2005)
Kommentar
Fra : Geert Lund


Dato : 02-10-05 17:23

Carsten Pedersen wrote:

> Den gængse metode er at løse problemet clientside med JavaScript. Så kan du
> sikre dig, at der ikke blot står noget i felterne, men også at det
> indtastede overholder visse betingelser og i givet fald bede brugeren rette,
> inden data sendes til videre behandling på serveren.

Det er dog vigtigt her at understrege at det ikke kan erstattes checks
på de samme ting i internt i scriptet! Man kan altså godt bruge
clientside javascript som hjælp - men man bør checke mindst de samme
ting serverside i sit script.

En af de første meget basale regler i alt programmering: Stol _ALDRIG_
på input fra en bruger er korrekt! Uanset hvad du clientside har checket
- dette kan omgås - både ved uhensigtsmæssig brug - men bestemt også ved
bevidst omgåen af javascriptet.


--
Med venlig hilsen
Geert Lund,
www.GLD.dk

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408927
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste