Eli miten saan tehtyä kirjautumisen silleen että se hakis tunnus.pnts tiedoston nimestä tunnuksen ja salasanan hakis tunnus.pnts tiedostosta. Tunnus.pnts tiedoston sisältö: Out pisteet
In pisteet
Sivun osote
Bannerin osote
Sivun nimi
Kuvaus
Tunnus
Salasana
Ratkaisu:
Opettele PHP:tä!!!!!!
:P
Noh, vaikka ajv vastaus onkin hieman tyly niin silti yhdyn häneen. Ei tämä tietääkseni mikään ilmainen työvoimatoimisto kuitenkaan ole.
Kuten jo sanottu, opettele ensin PHP, aloita vaikka tuolta:
https://www.ohjelmointiputka.net/oppaat/opas.
Sitten kun osaat jo jotain, niin näistä voi olla apua:
https://www.php.net/manual/fi/function.file.php
https://www.php.net/features.http-auth
https://www.php.net/session
<?php $tiedosto = $_POST['tunnus'] . ".pnts"; if (!file_exists($tiedosto)) { die("Tunnusta ei ole olemassa!"); } $filu = file($tiedosto); if ($_POST['tunnus'] == $filu[6] && $_POST['salasana'] == $filu[7]) { header("Location: mihin_ohjataan.php"); } else { die("Tunnukset väärin!"); } ?>
Nonni, tossa joku pieni kirjautuminen, en ees koittanu toimiiko. Määritä vaan se sivu tonne, minne käyttäjä ohjataan jos tunnukset oli oikein (se on nyt mihin_ohjataan.php). Toi on aika räkänen toi kirjautuminen, sessioneilla sais kunnollisen ja sillon olis kans parempi tietoturva, mutta enpä jaksa sellasta soodata. Ja sit tossa viel ne tunnus.pnts tiedostot samaan hakemistoon ton skriptan kanssa! Ja muuttujat 'tunnus' ja 'salasana' tulee lähettää tolle skriptalle POST-muodossa.
Teme kirjoitti:
<?php $tiedosto = $_POST['tunnus'] . ".pnts"; if (!file_exists($tiedosto)) { die("Tunnusta ei ole olemassa!"); } $filu = file($tiedosto); if ($_POST['tunnus'] == $filu[6] && $_POST['salasana'] == $filu[7]) { header("Location: mihin_ohjataan.php"); } else { die("Tunnukset väärin!"); } ?>Nonni, tossa joku pieni kirjautuminen, en ees koittanu toimiiko. Määritä vaan se sivu tonne, minne käyttäjä ohjataan jos tunnukset oli oikein (se on nyt mihin_ohjataan.php). Toi on aika räkänen toi kirjautuminen, sessioneilla sais kunnollisen ja sillon olis kans parempi tietoturva, mutta enpä jaksa sellasta soodata. Ja sit tossa viel ne tunnus.pnts tiedostot samaan hakemistoon ton skriptan kanssa! Ja muuttujat 'tunnus' ja 'salasana' tulee lähettää tolle skriptalle POST-muodossa.
Ei toimi tulee heti että tunnusta ei ole olemassa!
No taas sanon, että omia aivojakin SAA käyttää. Missäköhän kohtaa koodia mahtaisi olla vika, jos se antaa tuommoisen virheilmoituksen? No tässä pientä vinkkiä: saattaa jopa toimia, jos osaa käyttää
<?php //tiedosto, jossa tunnus ja salasana on $tiedosto = "tunnus.pnts"; if (!file_exists($tiedosto)) { die("Tiedostoa ei ole olemassa!"); } $filu = file($tiedosto); if ($_POST['tunnus'] == $filu[6] && $_POST['salasana'] == $filu[7]) { header("Location: mihin_ohjataan.php"); } else { die("Tunnukset väärin!"); } ?>
Edit:
Itse opettelen koodaamaan yrityksen ja erehdyksen kautta. Jos koodi ei toimi yritetään sitä korjata ja vika etsitään printtaamalla vaikka joka välissä jokaisen muuttujan arvo.
ajv kirjoitti:
No taas sanon, että omia aivojakin SAA käyttää. Missäköhän kohtaa koodia mahtaisi olla vika, jos se antaa tuommoisen virheilmoituksen? No tässä pientä vinkkiä: saattaa jopa toimia, jos osaa käyttää
<?php //tiedosto, jossa tunnus ja salasana on $tiedosto = "tunnus.pnts"; if (!file_exists($tiedosto)) { die("Tiedostoa ei ole olemassa!"); } $filu = file($tiedosto); if ($_POST['tunnus'] == $filu[6] && $_POST['salasana'] == $filu[7]) { header("Location: mihin_ohjataan.php"); } else { die("Tunnukset väärin!"); } ?>Edit:
Itse opettelen koodaamaan yrityksen ja erehdyksen kautta. Jos koodi ei toimi yritetään sitä korjata ja vika etsitään printtaamalla vaikka joka välissä jokaisen muuttujan arvo.
tota ei oikein voi käyttää koska sen pitäis hakea tunnuksen nimi sivut kansiosta mutta tossa se on ite määritettynä
edit: nyt tulee ku tota aiempaa kokeilin kirjautumis jutun kanssa Warning: Cannot modify header information - headers already sent by (output started at W:\www\testing\toplista\kirjaudu.php:8) in W:\www\testing\toplista\kirjaudu.php on line 16
Ei kannata vastata tähän aiheeseen enää, taitaa olla käytännön pila.
Hmm...
Tästä tulikin mieleen että aiheita pitäisi voida lukita.
T.M. kirjoitti:
Ei kannata vastata tähän aiheeseen enää, taitaa olla käytännön pila.
Hmm...
Tästä tulikin mieleen että aiheita pitäisi voida lukita.
mitä tarkotat pilalla?
Jos et oikeesti tajuu tota koodia niin aloita opiskelu ihan perus jutuista eli lue vaikka putkan (php)oppaat ajatuksella läpi ja testaa niitä ja tee jotain ihan yksinkertaista niiden perusteella. Ei millään pahalla mutta kuten jo jotkut ovat vihjailleet niin "yleisen ohjelmoinnin" perusteetkin tuntuvat olevan hukassa.
kyllä mä ihan perus jutut osaan kunnolla!
Jos osaa perusjutut PHP:stä, kirjautumisen tekemiseen ei pitäisi mennä edes 10:tä minuuttia
edit:
<? //ensimmäinen kirjautumisscriptini: if($_POST['salasana'] != "salainen_sana") die("Väärä tunnus"); else{ print "hötömölöä yms. shittiä"; } ?>
lol? Ja tuo on muuten vieläkin yhessä scriptissä käytössä, tosin evästeiden kanssa :P
Sain nyt tehtyy oman kirjautumisen mutta se ei suostu ottaa sitä käyttäjän nimee.
Ei vahingossakaan kannata postata sitä sun omaa koodia tänne, koska siinä on semmonen vaara että me voidaan silloin korjata sitä!
Aihe on jo aika vanha, joten et voi enää vastata siihen.