29. juni 2005 - 21:06Der er
17 kommentarer og 1 løsning
Opret bruger system - Mellem 3 og 10 tegn
Jeg er igang med et opret bruger system, hvordan laver jeg sådan at man kun kan oprette en bruger hvis man har skrevet mellem 3 og 10 tegn i brugernavn felt?
Men du kan gøre sådan her: <input type="text" name="username" maxlength="10" /> maxlength gør at brugeren ikke kan skrive mere end 10 tegn, så mangler vi kun minimum.
Jeg ville nu kraftigt anbefale php, og dertil kan du bruge www.php.net/strlen
Nej jeg mener sådan at du skriver et brugernavn, og trykker på opret så skriver den "Du blev ikke oprettet fordi ikke har indtastet et brugernavn imellem 3 og 10"
noget ala <input type="text" onblur="if (this.value.length >= 3 && this.value.length <= 10){alert(du skal indtaste mere end 3 of færre end 10);this.value = '';}">
ja, det kan php da også sagtens gøre, sådan fungere det ihvertfald i alle mine systemer.
Og ved at bruge javascript kan man jo også risikere at brugerne uden JS for problemer. Og du skal jo under alle omstændigheder validere koden serverside, INTET brugerinput må bruges uden passende validering serverside.
Please, lad os da så give ham en innerhtml løsning, alert() boxe er det MINDST brugervenlige i dette årtusinde, og de er også pisseirreterende.
if (this.value.length >= 3 && this.value.length <= 10) { document.getElementByID('errorDiv').innerHTML = "Du skal indtaste mere end 3 of færre end 10"; }
til en passende <div style="color: red;" id="errorDiv"></div>
Skal scriptet ikke se således ud (og det er altså betingelsen der er "vendt"):
<script type="text/javascript"> if (this.value.length < 3 || this.value.length > 10) { document.getElementByID('errorDiv').innerHTML = "Du skal indtaste mere end 3 of færre end 10"; } </script>
claus_joergensen >> Smag og behag - hvorfor synes du at alert bokse ikke er brugervenlige? 1) De giver en beskrivende advarsel 2) Du klikker ok og kan rette din fejl Innerhtml løsning i en div - tja..Hvis det er en ekstra div som ellers ikke indgår i designet så kan vel den spolere designet når der pludselig kommer fyld i den?
Ja jeg lavede en smutter og fik byttet om på større end og mindre end tegnene :o) Men jeg kan ikke se at en alert boks skulle være det mindst brugervenlige i dette årtusinde - jo hvis der ingen tekst er i den .. så jo Men det forekommer jo kun i M$produkter at man får en alert fejl med beskeden "der er sket en fejl" ;o)
Måske, alert-bokse er 'pisseirriterende' - men det er da intet at regne i forhold til visse brugere, der - mod bedre vidende - insisterer på at give tåbelige løsninger og lokke andre brugere til at skrive dårlig kode!
claus_joergensen >> Du insisterer på at skrive alle dine løsningsforslag i XHTML. Så er det da ikke begavet at anbefale en innerHTML-løsning - da jeg jo positivt ved, du udmærket er klar over, at innerHTML er komplet ubrugelig under XHTML og vil crashe enhver browser, der forsøger at parse siden som XHTML.
Definerer vi en bruger som en Eksperten-bruger, er den slags løsninger negationen af brugervenlighed ... i hvert fald, når de bliver afgivet mod bedre vidende.
Hvorfor dog anbefale invalid kode? Når andre gør det samme, står du som oftest på første række med armene højt hævet over hovedet og tilråb om rendyrket idioti. For mig at se, har du en yderst selektiv opfattelse af begrebet 'idioti' - eller en temmelig urealistisk opfattelse af dig selv :)
"innerHTML er komplet ubrugelig under XHTML" << nej var jeg ikke klar over, men du kunne jo passende give et version uden brug af alert() som også vil virke i xhtml, istedet for at forsøge at nedgøre mig (er det ikke formålet?)
"crashe enhver browser, der forsøger at parse siden som XHTML" << men jeg havde nok fundet ud af det hvis nogen brugere parsede som xhtml.
"Du insisterer på at skrive alle dine løsningsforslag i XHTML"
/> er blevet ren vane tastning, da jeg går mere og mere over til XSL løsninger, som dog fint kan outputte html 4.0 hvis man vil, eller bare lade det bliver i XML format.
I det mindste skriver jeg html løsninger som virker i alle browsere, og mit javascript er ikke document.all vel ?
Derudover giver jeg i (rigtig rigtig) mange tilfælde html 4.01 kode, det er ved at være længe siden jeg har postet et xhtml doctype på eksperten.dk
Hvorfor dog anbefale invalid kode? Når andre gør det samme, står du som oftest på første række med armene højt hævet over hovedet og tilråb om rendyrket idioti.
Yes sir ! Dog plejer tilråbene kun at komme EFTER de har nægtet at tro på valid kode er det mest fornuftige. Alle kan lave fejl, også mig, men i det mindste vælger jeg at lytte.
Og hvis vi lige skal afslutte mht. innerHTML så kommer min viden om innerHTML fra en 400 siders bog om javascript fra Ingegøren, men de BRUGT SKU document.all !
Og javascript er så uendelig dårlig dokumenteret i forhold til html/php/java. Hvis du kan henvise til noget ordenlig dokumentation som ikke starter med MSDN, ville jeg bliver glad.
sikken en masse råben op Nå men jeg lagde det første javascript løsnings forslag, så derfor lægger jeg et svar nu inden det her kører helt af sporet :o)
innerHTML, document.write, document.forms, document.images, m.fl. tilhører HTML-DOM'en - og kan derfor ikke bruges under XHTML, der jo er XML. At det lader sig gøre idag skyldes, at stort set ingen XHTML-sider parses som sådan, men som HTML.
At du får nogen over næbbet, må du vel forvente, når du fører dig så skråsikkert frem - og vrøvler :)
Synes godt om
Ny brugerNybegynder
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.