Heti alkuun: oon n00b näissä hommissa joten ei tartte haukkua.
Niin, oisko kellään koodia millä sais tehtyä HTML/PHP jonku rekirteröitymis-sivun ja sit ku on rekisteröityny ni vois heti kirjautuu? Kirjautumissivu mulla jo onkin
Trolli?
groovyb:n linkissä oleva koodi toimii kyllä perusosin, mutta on melko huonoa. Esimerkiksi suolan tekemistä ei kerrota, salasanan hashaamista ei näytetä ja kaiken lisäksi loginformin html-koodi on huonolaatuista. Kukaan itseäänkunnioittava htmlkoodari ei nykypäivänä kirjoita tuollaista htmllää. Ja php:n PDO-kirjastoakin kannattaisi käyttää, toki linkin esimerkissä tapahtuu samat asiat, mutta koodista tulee siistimpää ja turvallisempaa PDO:ta käyttämällä.
Kaikki tuossa esimerkissä on paskaa ja suurin osa myös väärin. Vielä kun nämä itseään kunnioittavat koodarit lopettaisivat paskojen esimerkkien levittämisen.
Zend Framework 2:een on saatavilla valmis ZfcUser-moduuli, joka tarjoaa geneeriset toiminnot käyttäjän rekisteröitymiselle, sisäänkirjautumiselle ja tietojen muuttamiselle. Siis yleisemmin sanottuna: ei ole mitään valmista ratkaisua, jonka voisit vain copy-pastea. Kaikki riippuu siitä, miten olet muun järjestelmän toteuttanut.
Kopioimisen sijaan sinun olisi parempi opetella itse tekemään tällaisia asioita. Luultavasti kirjautumissivusta, vaikkei se olisikaan itse kirjoittamaasi koodia, saa jo sen verran vinkkejä, että suurin osa asioista onnistuu.
The Alchemist kirjoitti:
Kaikki tuossa esimerkissä on paskaa...
Samaa minäkin tarkoitin mutta en viitsinyt ilmaista asiaa noin suorasti
The Alchemist kirjoitti:
Kopioimisen sijaan sinun olisi parempi opetella itse tekemään tällaisia asioita. Luultavasti kirjautumissivusta, vaikkei se olisikaan itse kirjoittamaasi koodia, saa jo sen verran vinkkejä, että suurin osa asioista onnistuu.
Ihan ohjelmointiputkasta kopioitua PHP-koodia on :D. Ja koitan nytten vähän katsella jos siitä jonkinmoista sivua saa.
Ei ohjelmointiputkastakaan kopioitu koodi aina ole hyvää koodia. Se voi olla jostain aloittelijan kysymyksestä tai huonohkosta vastauksesta. Kirjoita koodisi itse, mallia voi kyllä ottaa, mutta täytyy ymmärtää, mitä koodi tekee, varsinkin jos copypasteaa, ja silloin täytyy osata myös muuttaa koodia omiin tarkoituksiin sopivaksi.
<?php $tunnus = $_POST["tunnus"]; $salasana = $_POST["salasana"]; if ($tunnus == "tunnus" && $salasana == "salasana") { echo "Tervetuloa!"; } else { echo "Häivy pois!"; } ?>
Tollanen koodi ja ihan hhyvin kirjautuminen pelittää
Joo, näyttää pelittävän. :D Mitä tapahtuu, kun vaihdat sivua? Entä kun haluat, että joku toinen voi kirjautua eri tunnuksella sivulle? Ootko tallentanut nuo tunnukset ja salasanat muualle, kuin tuohon typerään if-lauseeseen?
Siinä vähän pohdittavaa, ja joku muu voi antaa lisää pohdittavaa.
P.S. Muuten, tämän kuuluisi olla tuolla 'Nettisivut ja -ohjelmointi'-osiossa.
dartvaneri kirjoitti:
Joo, näyttää pelittävän. :D Mitä tapahtuu, kun vaihdat sivua? Entä kun haluat, että joku toinen voi kirjautua eri tunnuksella sivulle? Ootko tallentanut nuo tunnukset ja salasanat muualle, kuin tuohon typerään if-lauseeseen?
Siinä vähän pohdittavaa, ja joku muu voi antaa lisää pohdittavaa.
P.S. Muuten, tämän kuuluisi olla tuolla 'Nettisivut ja -ohjelmointi'-osiossa.
Q: Mitä tapahtuu kun vaihdat sivua?
A: Olen tyhmä ja en ymmärränyt kysymystä
Q: Entä kun haluat, että joku toinen voi kirjautua eri tunnuksella sivulle
A: en ole vielä halunnut, mutta voin koittaa "säilöä" tunnukset jonnekin.
Q: Ootko tallentanut nuo tunnukset ja salasanat muualle, kuin tuohon typerään if-lauseeseen?
A: Katso edellinen vastaus
Q&A
1. Jos sinulla on sivusto. Yhdellä sivulla kirjaudut sisään, juuri tällä sivulla jossa esittelemäsi koodi on. Jos menet sivuston toiselle sivulle, esim. jos olisi linkki etusivulle, kirjautuminen ole tuolla tyylilläsi voimassa.
2. Tunnusten säilömiseen oiva paikka on php:n $_SESSION-taulukko
3. Tunnukset yleensä tallennetaan käyttäjää rekisteröitäessä tietokantaan, salasanat myös, tosin yleensä suolattuna ja aina hashattuna. Kun kirjaudut sisään:
1. salasanasi hashataan
2. haetaan käyttäjää tietokannasta antamallasi käyttäjätunnuksella
3. Jos käyttäjä löytyy, otetaan salasana (joka siis on hashattuna, esim. sha512:sella) ja verrataan onko se sama kuin kirjautumislomakkeessa annetun salasanan hash
Suurinpiirtein noin käyttäjän kirjautuminen ja luominen menee
Tuossa vielä linkki Metabolixin koodivinkkiin phpn salasanafunktioista. Tuolta ilmenee myös käyttäjän luomisen ja kirjautumisen perusidea: https://www.ohjelmointiputka.net/koodivinkit/
1: Selvä
2: Selvä
3: Selvä
Hei, itse en kayttaisin mitaan valmiita koodeja, Vaan tekisin MySQL tietokonannan, Tekisin taulun "kayttajat" Ja koodaisin Kirjautumisen. Mutta eihan se minulle kuulu, Mita pornosivuillesi laittelet. Ihan vinkkina vaan tama asia.
tiituus kirjoitti:
Hei, itse en kayttaisin mitaan valmiita koodeja, Vaan tekisin MySQL tietokonannan, Tekisin taulun "kayttajat" Ja koodaisin Kirjautumisen. Mutta eihan se minulle kuulu, Mita pornosivuillesi laittelet. Ihan vinkkina vaan tama asia.
Sinä...
Tää tiituus on ihan saastaa..häxäs eilen mun sivut ja muutti joksku pornosivuiks.
Sulta saastalta en ota vinkkejä
Jontsu1 kirjoitti:
tiituus kirjoitti:
Hei, itse en kayttaisin mitaan valmiita koodeja, Vaan tekisin MySQL tietokonannan, Tekisin taulun "kayttajat" Ja koodaisin Kirjautumisen. Mutta eihan se minulle kuulu, Mita pornosivuillesi laittelet. Ihan vinkkina vaan tama asia.
Sinä...
Tää tiituus on ihan saastaa..häxäs eilen mun sivut ja muutti joksku pornosivuiks.
Sulta saastalta en ota vinkkejä
Antaa jo olla, En haxannut vaan annoit tunnuksen. En jaksaisi taistella, Mutta tietomurtoja en ole tehnyt, Voin lahettaa sinulle joku paiva Koodin + DataBasen jos saan aikaiseksi :)
tiituus kirjoitti:
Voin lahettaa sinulle joku paiva Koodin + DataBasen jos saan aikaiseksi :)
Kuten sanoin äsken:
Sulta saastalta en ota vinkkejä, enkä ota sulta enää mitään, ja sä häxäsit ja piste, tää sun ja mun keskustelu voiaanki lopettaa tähäm
tiituus kirjoitti:
Antaa jo olla, En haxannut vaan annoit tunnuksen. En jaksaisi taistella, Mutta tietomurtoja en ole tehnyt, Voin lahettaa sinulle joku paiva Koodin + DataBasen jos saan aikaiseksi :)
Ei kannata tuommoisia ottaa vastaan. Minä voin suoraan laittaa koodia näkyviin, mutta ei siitä ole mitään hyötyä, koska Jontsu1 ei silloin opi mitään. Jontsu1: Kysy mitä haluat tietää, voin auttaa.
Ripe kirjoitti:
tiituus kirjoitti:
Antaa jo olla, En haxannut vaan annoit tunnuksen. En jaksaisi taistella, Mutta tietomurtoja en ole tehnyt, Voin lahettaa sinulle joku paiva Koodin + DataBasen jos saan aikaiseksi :)
Ei kannata tuommoisia ottaa vastaan. Minä voin suoraan laittaa koodia näkyviin, mutta ei siitä ole mitään hyötyä, koska Jontsu1 ei silloin opi mitään. Jontsu1: Kysy mitä haluat tietää, voin auttaa.
No, koitin tuon ohjeen mukaan tehdä rekisteröitymissivun: http://www.elkoo.net/html/php_lomake.php
tein niinkuin käskettiin, mutta ei ihan mennyt putkeen, testaapa ite: http://testisivu.nazuka.net/testiphp/
PS: Se palvelin missä testisivu on, se tukee kyllä PHP:ta
Erroria pukkaa kun rekisteröityy:
Parse error: syntax error, unexpected T_STRING, expecting ')' in /home/u586501848/public_html/testiphp/rekisteroityminen.php on line 13
, ja merkistökoodaus on väärä. Äät ja Ööt näkyy väärin. Tuo elkoon ohje on palautelomakkeen tekoon, ei rekisteröitymiseen. Lisäksi sivusi html on epävalidia, puuttuu esim. <!DOCTYPE html> sivun alusta
Ripe kirjoitti:
Erroria pukkaa kun rekisteröityy: – –
Tiesin että tulee error, testasin kyllä itekin
Taidanpa ihan ite koittaa tehä sen rekisteröitymissivun, neuvoja saa antaa mutta koitan tehä mahd. paljon ite :)
Tältä se rekisteröitymissivu vois suurinpiirtein näyttää:
<!DOCTYPE html> <meta charset="utf-8"> <title>Rekisteröidy</title> <form method="sisaan.php"> <!-- Tänne inputit eli käyttäjänimi, email, salasana, salasana uudelleen-kentät --> </form>
Ja sitten muistat tallentaa tiedoston utf-8 muodossa että ääkköset toimii oikein.
tiituus kirjoitti:
Jontsu1 kirjoitti:
Tää tiituus on ihan saastaa..häxäs eilen mun sivut ja muutti joksku pornosivuiks.
Antaa jo olla, En haxannut vaan annoit tunnuksen. En jaksaisi taistella, Mutta tietomurtoja en ole tehnyt
No kyllähän social engineering on yksi yleisesti tunnettu murtautumistekniikka. Siinä siis käyttäjältä hankitaan tunnukset johonkin asialliseen syyhyn vedoten.
Jontsu ei kuitenkaan varmaan antanut tunnuksia sitä varten, että voisit laittaa pornoa sivuille (tai mitä tuo pornosivuiksi muuttaminen nyt sitten tarkoittikin)?
Laitoin mailia, Mutta hän varmaankin vastaa asiattomasti kuten ennenkkin ;)
Rauhoittukaas nyt, kunhan heitin ekan mikä googlesta tuli vastaan.
Esimerkkejä on netti pullollaan, kun tietää mitä hakee. En edes lukenut mitä pätkä sisälsi. Jokainen noin laaja "opas" sisältää tasolla tai toisella sen ydinlogiikan miten asiaa voisi ajatella. Koodi - Tietokantaa - varmennusta. Se miten siitä etenee on eri asia. Kopioiko paskaa koodia, vai ymmärtääkö ajatusmallia ja kehittää paremman tavan. Tai ainakin osaa etsiä parempaa tapaa jota taas yrittää sisäistää. Idea kuitenkin varmasti aukesi kaikille. Se että miten toteutus tuossa oli tehty, ei ollut se juttu.
5/5 lanka
Ei mul muuta
Suosittelen että aloittaisit ihan ruohonjuuritasolta, kielten perusteista. Seuraavaksi siirryt tietokantojen luvattuun maahan PDO:n merkeissä.
Kun ymmärrät perustasolla ym. asiat, voit luoda (hallitusti) oman kirjautumisen 'from scratch'.
Toinen vaihtoehto tietysti on että kopioit sitä huonoa, vanhentunutta turvatonta koodia pornosivullesi.
Yucca aka. Jukka K. Korpelan hyvä HTML 5 kirja, siinä toki oletetaan että lukija omaa HTML:n perusteet.
http://www.adlibris.com/fi/product.aspx?isbn=9510381373
PHP:stä en ole koskaan löytänyt yhtään hyvää kirjaa, mutta putkan oppaat ovat tässä tapauksessa varmasti riittävän haasteelliset:
https://www.ohjelmointiputka.net/oppaat/opas.
https://www.ohjelmointiputka.net/oppaat/opas.
ps. Epäilen kuitenkin vielä vahvasti että kyseessä on trolli.
qeijo: Ohjelmointiputkan oppaat olen lukenut. Linkittämäsi kirjs löytyy kaupunkini kirjastosta joten käyn joskus tällä viikolla sen lainaamassa.
(Mod. huom: järkeä lainauksiin, turha kopioida kaikkia viestejä.)
Parse error: syntax error, unexpected T_STRING, expecting ')' in /home/u586501848/public_html/testiphp/rekisteroityminen.php on line 13
Kun se antaa tollasen virheen niin sehän siis tarkoittaa että siulla siitä koodista puuttuu ) -merkki riviltä 13...
Kannattaisi sinunkin alkaa noita virheitä ymmärtämään, niitä kun on vaikea vältää kun kokeilee jotain uutta...
FINALY!!
Nyt onnistuin tekemään rekisteröitymissivun! Mutta vielä mietityttää yks juttu, haluisin, että kun käyttäjä on kirjautunut tunnuksillaan sisään, näkyisi kaikilla sivuilla teksti "Olet kirjautunut sisään nimellä {käyttäjän nimi}.
Tällainen mahollista ?
Jontsu1 kirjoitti:
haluisin, että kun käyttäjä on kirjautunut tunnuksillaan sisään, näkyisi kaikilla sivuilla teksti "Olet kirjautunut sisään nimellä {käyttäjän nimi}.
Tällainen mahollista ?
Ei ole mahdollista. Jos se olisi, olisi semmoista kikkaa jo joku käyttänyt.
Olisiko mahdoton ajatus yrittää itse soveltaa ongelmaan if-lausetta ja echo-lausetta?
Metabolix kirjoitti:
Olisiko mahdoton ajatus yrittää itse soveltaa ongelmaan if-lausetta ja echo-lausetta?
Yritän, vaikka noob näissä olenkin.
Aihe on jo aika vanha, joten et voi enää vastata siihen.