/ 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
HTML form og PHP - value
Fra : Stig Sørensen


Dato : 13-08-09 13:31

Hej gruppe.

Jeg har en HTML form, med et par input felter.
Der er validering på formen, så hvis ikke alle felter er udfyldte
kommer der en advarsel. (ej Ajax, lavet med PHP).

I den forbindelse ville det jo være rart at vise hvad brugeren har
skrevet i de felter han nu engang har udfyldt, derfor er value sat
således:

value="<?php if($_POST) echo htmlspecialchars($_POST['username']);?>"

Men! Jeg kom så i tanke om følgende:

Lad os antage at brugeren udfylder feltet "username" med: Ras"mus" -
og han glemmer at udfylde et par andre felter. Så vil Ras"mus" jo
blive vist i feltet igen, til hans store glæde, så han ikke skal
udfylde det igen (eller gå tilbage i browseren).
Men, når nu han får udfyldt de resterende felter, så står der jo ikke
længere Ras"mus" i databasen, da anførselstegnene jo er blevet escapet
af htmlspecialchars.

Det er jo så ikke noget problem, når han igen skal skrive Ras"mus" for
at logge ind feks, så skal dét felt jo også bare escapes for html-
tegn.

Men er det den rigtige praksis?

Man vil jo samtidig gerne gøre sine sider så sikrer som muligt.


Håber I kan forstår hvor jeg gerne vil hen med emnet

Mvh
Stig

 
 
Dan Storm (13-08-2009)
Kommentar
Fra : Dan Storm


Dato : 13-08-09 21:58

Stig Sørensen skrev:
> Men er det den rigtige praksis?

Personligt ville jeg ikke lade et alias være det som en bruger logger
ind med - mange brugere vil gerne lave alias med særlige tegn (L@ssie,
..' Z0r0 '., tri||e og lign.)

Det er som sagt blot et alias.

Mine krav til et login er at folk logger ind med en emailadresse/et
nummer samt et password som de selv har lavet/jeg har angivet.

Det er ikke 'mere rigtigt' at gøre, men det er bare sådan jeg laver det.
Så slipper jeg for at tænke på at validere andet end at det er en
emailadresse/et nummer og så må folk sq selv bestemme hvad deres alias
skal være :)


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

Stig Sørensen (13-08-2009)
Kommentar
Fra : Stig Sørensen


Dato : 13-08-09 15:17

On Aug 13, 10:58 pm, Dan Storm <shadyz@_REMOVETHIS_err0r.dk> wrote:

> Mine krav til et login er at folk logger ind med en emailadresse/et
> nummer samt et password som de selv har lavet/jeg har angivet.
>
> Det er ikke 'mere rigtigt' at gøre, men det er bare sådan jeg laver det.
> Så slipper jeg for at tænke på at validere andet end at det er en
> emailadresse/et nummer og så må folk sq selv bestemme hvad deres alias
> skal være :)

Aha.. Det synes jeg lyder om en god idé faktisk.

Vil lave det om så man logger ind med sin email adresse og kodeord.
(intet brugernavn).
Ved oprettelse skal man også indtaste et brugernavn (alias), men dette
skal vel helst være unikt så der ikke opstår forvirring på feks. et
forum (?)
Efter oprettelse har man mulighed for at indtaste flere oplysninger,
feks. rigtige navn, bopæl etc.

Mvh
Stig

Dan Storm (13-08-2009)
Kommentar
Fra : Dan Storm


Dato : 13-08-09 22:27

Stig Sørensen skrev:
> Ved oprettelse skal man også indtaste et brugernavn (alias), men dette
> skal vel helst være unikt så der ikke opstår forvirring på feks. et
> forum (?)

Tja, alt afhængigt af hvad det skal bruges til naturligvis, men ja - det
ville ikke være godt hvis folk rendte og udgav sig for at være en anden ;)


--
Dan Storm - storm at err0r dot dk / http://err0r.dk

Tro ikke brugerne vil gøre noget for at undgå dit killfilter
- Så vigtig er du heller ikke!

N/A (13-08-2009)
Kommentar
Fra : N/A


Dato : 13-08-09 22:27



Stig Johansen (13-08-2009)
Kommentar
Fra : Stig Johansen


Dato : 13-08-09 22:28

Stig Sørensen wrote:

> Men er det den rigtige praksis?
>
> Man vil jo samtidig gerne gøre sine sider så sikrer som muligt.

Den rigtige måde at gøre tingene på er, at bruge parameterized queries ved
input, og 'XMLEncode'[1] output.

Andet behøver du ikke tænke på (sikkerhedsmæssigt).

[1] karaktererne <>&'

--
Med venlig hilsen
Stig Johansen

Stig Johansen (13-08-2009)
Kommentar
Fra : Stig Johansen


Dato : 13-08-09 22:29

Stig Johansen wrote:

> [1] karaktererne <>&'

Hovsa, mente selvfølgelig:
[1] karaktererne <>&"

--
Med venlig hilsen
Stig Johansen

Bertel Lund Hansen (14-08-2009)
Kommentar
Fra : Bertel Lund Hansen


Dato : 14-08-09 02:55

Stig Sørensen skrev:

> value="<?php if($_POST) echo htmlspecialchars($_POST['username']);?>"

Min måde er ikke som sådan bedre, men jeg foretrækker en enklere
skrivemåde:

$username=htmlspecialchars($_POST['username']); // Kan evt. laved
med if
.... value="<?php echo '$username' ?>" ...

Og så fik jeg også rettet en HTML-fejl, for der skal være
anførselstegn om parameterværdierne.

--
Bertel
http://bertel.lundhansen.dk/         FIDUSO: http://fiduso.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