Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Salasana kirjautuminen tiedostosta

Armoletti [08.05.2005 22:05:59]

#

Tälläisia aiheita on ollut varmaan jo monia, mutta en löydä vastausta omaan ongelmaani.

Eli minulla on kirjautumis systeemi. Siihen syötetään käyttis ja salasana sitten se ohjaa sen kirjautumis sivulle jossa se tarkistaa if-lauseella että salasana on sama kuin .txt tiedostossa jonka avaan file()-funktiolla (tässä tiedostossa on myös muuta tekstiä toisella rivillä salasanan jälkeen), vaikka salasana olisikin sama se silti valittaa että se ei ole sama kuin tiedostossa. Tutkin asiaa ja laitoin sen tulostamaan sekä syötetyn salasanan että tiedostossa olevan salasanan, huomasin että tiedostossa olevan perään se tulosti välilyönnin, kokeilin kirjautuessa lsätä salasanan perään välilyönnin mutta sekään ei auttanut. Miten se lukee rivin vaihdon tiedostosta ja mitä tälle ongelmalle pitäisi tehdä?

(jos ette ymmärtäneet jotain kohtaa niin kysykää)

Deewiant [08.05.2005 22:08:56]

#

Miten olisi, että ajat trim()-funktion sekä syötteelle että tiedostosta luetulle salasanalle? Se putsaa turhat välilyönnit ja rivinvaihdot merkkijonojen alusta ja lopusta.

https://www.php.net/trim

Gugu [08.05.2005 22:10:30]

#

Toimiskohan jos ensin poistat sen rivinvaihtomerkin ja vertailet vasta sitten?

$salasana = str_replace("\n","",$salasana);

Armoletti [09.05.2005 17:27:07]

#

Kiitos homma toimii trim()-funktiolla

hunajavohveli [09.05.2005 22:22:27]

#

Se näyttää ehkä tulostettuna, että perään tulee välilyönti, mutta kiinnoistaisi kyllä tietää, että mitä sinne oikeasti tulee perään ja miksi. Itsekin nimittäin törmäsin tähän samaan ongelmaan, ja trim() auttoi siinäkin.

tuomas [09.05.2005 22:28:00]

#

Mikäli salasana on tiedostossasi ollut selko muotoinen, suosittelisin sen salaamista esim. md5() funktiolla.
Muutat koodiasia sen verran että tallennat sen ko. funktion kautta ja tarkistaessa ajat annetun salasanan tuon funktion läpi ja vertaat tiedostossa olevaan.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta