[PHP] [javascript] formvalidatie Mozilla/IE

Pagina: 1
Acties:
  • 41 views sinds 30-01-2008

  • knijnsel
  • Registratie: Januari 2002
  • Laatst online: 14:32
Hoi ik heb een probleem met vormvalidatie. Ik zal mijn probleem kort met voorbeeld beschrijven.

In mijn pagina's heb ik forms met :

code:
1
<form name="cPersEdit" action="'.$_SERVER['PHP_SELF'].'" method="post" onsubmit="return FrmValPers(this);">


In de header staat een stukje javascript:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<script language="JavaScript" type="text/javascript">
<!--
function FrmValPers(frm) {
    if (!CheckPlaats(frm.ff_woonplaats.value)) {
        alert("de woonplaats is niet goed ingevoerd.");
        frm.ff_woonplaats.focus();
        return false;
    }
<knip knip>
}

function checkplaats (tmpval){
 (check iets en als ok return true)
}
--> </script>


Wat mooi is aan deze oplossing, is dat de form validatie VOOR de post gebeurd, dus in de database komt geen onzin.
Dacht ik. Wat blijkt: dit alles werkt alleen in Mozilla en niet in Internet Explorer. Toch wil ik uiteraard ook hiermee checken want dat is de browser die sukke.... oh sorry, andere mensen gebruiken, is het niet?
Wie oh wie kan mij helpen?


(evt bericht van mij op vragen kan ik pas in de loop van volgende week geven ivm. lang weekeinde)

Ik ben erg benieuwd naar jullie suggesties.

<knijnsel> De nederlandstalige GuildWars site


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 20-08 11:40

gorgi_19

Kruimeltjes zijn weer op :9

Een paar dingen..

1. Vertrouw NOOIT userinput; met een neppagina moet ik eea ook kunnen omzeilen, evenals door Javascript uit te zetten. Formvalidatie moet sowieso ook nog op de server gebeuren.
2. Wat heeft PHP er mee te maken? Vergeet iig het PHP gedeelte.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

javascript functies zijn case-sensitive: checkplaats != CheckPlaats

en je checked nu alleen of de value naar false te casten is; stel dat er een plaats is genaamd '0' (nul dus) - dan geeft jouw script een errormelding. Aan de andere kant, als ik een spatie invoer kom ik wel door je validatie heen.

oh ja, haal die hide-this-script-from-browsers-made-in-the-stoneage dingetjes maar weg, die hebben tegenwoordig totaal geen nut meer.

[ Voor 19% gewijzigd door crisp op 10-10-2003 23:38 ]

Intentionally left blank


  • faabman
  • Registratie: Januari 2001
  • Laatst online: 08-08-2024
Wat mooi is aan deze oplossing, is dat de form validatie VOOR de post gebeurd, dus in de database komt geen onzin.
Dacht ik. Wat blijkt: dit alles werkt alleen in Mozilla en niet in Internet Explorer. Toch wil ik uiteraard ook hiermee checken want dat is de browser die sukke.... oh sorry, andere mensen gebruiken, is het niet?
Wie oh wie kan mij helpen?
zoals gorgi al vermeld, vertrouw nooit de data die de gebruiker stuurt, je kan eenvoudig een controle uitvoeren aan de serverkant

volgens mij heeft microsoft een hele mooie site waarop je alles maar dan ook alles kunt vinden over de manier waarop zij javascript interpreteren / gebruiken

en och, ik denk niet dat jou klanten / bezoekers blij met je zullen zijn als je 94% van de gebruikte browsersoftware niet ondersteund :X :+

bron:
http://www.w3schools.com/browsers/browsers_stats.asp

Op zoek naar een baan als Coldfusion webdeveloper? Mail me!


  • dusty
  • Registratie: Mei 2000
  • Laatst online: 21-02 00:06

dusty

Celebrate Life!

1) Dit topic heeft niets met PHP te maken, dus die tag had ook niet in de titel moeten staan.
2) Het lijkt erop dat je iemand anders alle debug werk wilt laten doen, en dan zelf niets meer hoeft te doen (uiteraard niet de bedoeling)
3) Als je Internet Explorer inderdaad zo slecht vind, dan zeg je tegen de gebruikers "Ga Heen", kom maar terug als je een "echte" browser hebt. En dan maak je je pagina alleen beschikbaar voor Mozilla, wil je dat niet dan hoor je IE op zijn minst netjes te behandelen anders heb je ook meteen de kans dat de mensen die wel IE goed vinden ze voor de schenen schopt en jouw meteen niet meer willen helpen. (en daarmee zou je jezelf te pakken hebben.)
4) Crisp heeft reeds de hint gegeven waarmee jij je script zelf kan aanpassen zodat het netjes werkt.
5) Dit topic gaat dus volledig over Javascript en had dus in W&G geplaatst moeten worden.

In overleg met een van de W&G moderators besloten om dit topic echter niet te verplaatsen, maar te sluiten.

Back In Black!
"Je moet haar alleen aan de ketting leggen" - MueR


Dit topic is gesloten.