Avatar billede m_bold Praktikant
02. oktober 2008 - 20:13 Der er 15 kommentarer og
1 løsning

onclick & onkeydown virker ikke ved 'Enter'

Hejsa.

Jeg har lavet en simpel form:

<form method="POST" name="login" id="login" action="test.php?tilmeld=true">
<input name="mail" type="text" id="mail" size="40">
<input type="submit" name="Submit" value="  Tilmeld  " onclick="this.form.mail.value='yes';" onkeydown="this.form.mail.value='yes';"/>
</form>

Mit problem er, at onclick og onkeydown kun virker, når jeg klikker på knappen eller når jeg markerer den og trykker space.
Når jeg bare trykker enter, så virker den ikke.

Hvorfor. Kan det have noget med domæne/server-opsætningen at gøre?
Avatar billede m_bold Praktikant
02. oktober 2008 - 20:28 #1
Det ser ud til, at problemet kun er i IE7. Firefox har ingen problemer.
Kan man gøre noget ved det?
Avatar billede olebole Juniormester
02. oktober 2008 - 20:31 #2
<ole>

Jeg forstår ikke rigtig, hvad der virker, og hvad der ikke virker - men én ting er sikkert: Du skal kalde din sumbit-knap noget andet end 'Submit'  =)

/mvh
</bole>
Avatar billede m_bold Praktikant
02. oktober 2008 - 20:36 #3
Ja, ok. Det er hermed rettet. Men problemet er der stadig.
Avatar billede m_bold Praktikant
02. oktober 2008 - 21:25 #4
Det lader til, at hvis der kun er ét synligt felt i formen, så kan man ikke sætte værdien. Men hvis jeg smider et mere felt på, så vupti....

Det er da for underligt????
Avatar billede montago Praktikant
03. oktober 2008 - 00:10 #5
<input name="mail" type="text" id="mail" size="40"> <-- mangler '/'
<input name="mail" type="text" id="mail" size="40" />

hvorfor vil du 'keydown' på en submitknap ?

submit virker hvis man trykker 'enter' i text-input feltet...

du kan også i stedet fange onkeydown på din text-input, og herved lave en form.submit()
Avatar billede m_bold Praktikant
03. oktober 2008 - 06:39 #6
montago --> det ser ikke ud til at gøre nogen forskel.

Grunden til at jeg bruger onclick og onkeydown, er fordi at jeg gerne vil sikre mig mod spambots, så det er kun hvis der rent faktisk bliver trykket på enter eller på knappen, at den skal submittes.
Avatar billede montago Praktikant
03. oktober 2008 - 07:30 #7
det vil kun sikre dig imod NOGLE spambots

Hvad med dem som parser HTML'en, finder en form, og post'er dens værdier uden at kigge på eventuelle scripts ?


AJAX.net har et No-BOT script man kan bruge - alternativet er at bruge Captcha som er den meste sikre måde imod bots.
Avatar billede m_bold Praktikant
03. oktober 2008 - 08:26 #8
Tja, det script som jeg har taget udgangspunkt i er: http://www.phpbegynder.dk/artikler.php?id=26&page=1

Det fungerer fint til husbehov, men er nu stødt på dette problem, som opstår, når formularen kun har et felt.

Vurderer du, at det script ikke giver nok sikkerhed?
Avatar billede olebole Juniormester
03. oktober 2008 - 14:26 #9
Det giver ingen sikkerhed  =)
Avatar billede m_bold Praktikant
03. oktober 2008 - 14:35 #10
Uddybning, bebe....

Så vidt jeg indtil videre oplever, så kommer er der ingen spambots, der bruger den.
Avatar billede olebole Juniormester
03. oktober 2008 - 14:38 #11
Hvad vil du have af uddybning? Du skriver jo selv helt korrekt "til husbehov". Vil du lave noget sikkert, bør du bruge captcha
Avatar billede m_bold Praktikant
03. oktober 2008 - 15:03 #12
Ok, men i hvilke tilfælde vil scriptet fejle? Det kræver jo at der bliver "aktivt" trykket på knappen, så dermed må man vel også udelukke spambots...?
Avatar billede montago Praktikant
03. oktober 2008 - 21:55 #13
Det vil ikke tage mig 5 minutter at lave et script som kan spamme din side ihjel...

1st - lægger jeg mærke til hvad mit POST sender til siden
2nd - lægger jeg mærke til at hidden field er tomt
3rd - opretter jeg et script som fortsætter arbejdet.

et spambot -filter skal kræve en form for menneskelig validering, som et script ikke kan (endnu)

Captcha er pt. den bedste sikring til dette.
Avatar billede m_bold Praktikant
07. oktober 2008 - 18:03 #14
Ok. Så må jeg vist hellere bruge Captcha.

Har du et godt link til et sted, hvor jeg kan finde noget captcha-kode. Jeg har fundet et par stykker, men de kræver at jeg installerer fonte på serveren, og det tror jeg ikke jeg kan....
Avatar billede m_bold Praktikant
07. oktober 2008 - 19:55 #15
Avatar billede olebole Juniormester
07. oktober 2008 - 21:12 #16
- ellers er der et par udmærkede artikler om emnet på Eksperten  =)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester