Joo kuten aikaisemmasta vististä kävi ilmi että tarvitsisin salasana kyselyn, mutta koska tämä php:n kirjoittajan urani on vasta alkanut en oikein sitä osaa tehdä mutta löysin tämän näköisen pätkän mutta se ei oikein toimi, eli osaakohan kukaan sanoa missä vika..?
<html> <head> <title>KIRJAUDU SISÄÄN</title> </head> <body><center> <p>Tervetuloa, syötä salasana</center> <form method="post" action = <?php print("$PHP_SELF"); ?>> <b>SALASANA</b>: <input type="password" size="15" name="salasana"> <input type="SUBMIT" name="send" value="Enter"> </div> </FORM> <p> <?php if ($salasana == "salasana") { include ("index.html"); } else { print ("<b><i>$pass</i></b> on kirjoitettu väärin."); } ?> <p> <center> </body> </html>
Kakkienhan se on jostain aloitettava, mutta ehdottaisin että alottaisit oman php-urasi esimerkiksi osoitteesta https://www.ohjelmointiputka.net/oppaat/opas.
Voi aloittaa myös kakkien, mut tarkoitus oli kirjoittaa 'kaikkien'. Selvänä näitä hommia pitäis näköjään hoitaa...
joo kiitos vaan kovasti vinkistä, mutta mulla ois aika kova kiire tämän kanssa ja oon vähän käynyt tota läpi ja käyn paremmin kun on aikaa mutta nyt pitäis vaan saada toi salasana toimimaan, vaikka sitten niin etten tajua koodista mitään kunhan toimii ja myöhemmin opiskelen php:n kunnolla.. Eli jos millään viitsisit kertoa missä vika on niin olisin hyvin kiitollinen..
Okei. Mut toi on kyl aika kuppanen salasanasuojaus ja noi virheet jo pelkästään tuossa html:ssä on jokseenki käsittämättömiä. Mut suurinpiirtein toimiva version tuosta ylläolevasta vois mennä vaikka näin:
<html> <head> <title>KIRJAUDU SISÄÄN</title> </head> <body> <p>Tervetuloa, syötä salasana</p> <?php print "<form method='post' action='".$_SERVER['PHP_SELF']."'>\n"; ?> <b>SALASANA</b>: <input type="password" size="15" name="salasana"> <input type="SUBMIT" name="send" value="Enter"> </form> <?php $pw = $_POST['salasana']; if(isset($_POST['send'])) { if(strcmp($pw,"salasana")==0) print "Harvinaisen gurgoo."; // tähän vaik se include() else print "Ei enää niin gurgoo, antamasi salasana <b>".$pw."</b> on ihan päin lerssiä."; } // if ?> </body> </html>
edit: hiukka kommentteja lissää
Joo kiitos, mutta myöhästyit hiukan.. tein niinkun käskit ja aloin lukea opasta ja kun pääsin if kohtaan sain tän romun toimimaan ja hyvältähän tää nyt tuntuu ku ei tarvinnut ottaa ihan valmista koodia sulta..=) Mä muutin sitä viellä tämän verran että aluks on html tiedosto jossa formin actionissa on ton salasanan testauksen php tiedosto, eli pätkäsin tän kahteen osaan ja sitten pistin tohon ennen iffiä $salasana ="salasana";
<?php
(eli tähän)
if ($salasana == "salasana")
{
include ("index.html");
ja nythän se sitten ohjaa ton.. Pitääkin lukea huolella toi opas läpi..=)
No hyvä et tartuit itse härkää sarvista :) Ja ku luet opasta eteenpäin, opit myös sen että mikäli register_globals - asetus on pois päältä, et voi käyttää muuttujaa $salasana suoraan, vaan $_POST - taulukon kautta.
jne.
edit: typo
Joo no saa nähdä miten opin..=) sitten sellaista että osaatkohan kertoa tai osaakohan kukaan muu sanoa että on vaikea tehdä sellaista ja miten kannattaa aloittaa (yritän jo lukea oppaita) että on muutama checkbox html sivussa ja kun käyttäjä laittaa johonkin rastin niin se kirjoittuu tekstitiedostoon tai siis ton mä osaan tehdä mutta sitten siinä on viellä sellainen juttu että kun oon tekemässä sellaista varaus systeemiä niin käyttäjä merkkaa viellä päivämäärän ja jos joku muu on varannut samana päivänä saman tavaran niin se hakee tekstitiedostosta ne tiedot näkyviin joka on jo varannut..?
tais mennä aika epäselväks mutta jos tästä jotain ymmärtää niin hyvä.. Mitenkäs muuten noi koodit saa tällä palstalla tollaseen laatikkoon..?
Boardin käyttöohjeet.
https://www.ohjelmointiputka.net/ohje.php?tunnus=kohjeet
Tuo varausjärjestelmä olis varmaankin hyvä toteuttaa niin että tallennat varaukset riveittäin tiedostoon niin että pvm on rivin alussa.
Loput tiedot voikin sitten olla rivin perässä jollain erotinmerkillä.
Se miksi on hyvä pitää pvm rivin alussa on haun takia. Nimittäin jos pidät tiedoston sisällön oikeassa järjestyksessä saat tuon haun toimimaan helposti vertaamalla pvm rivi alussa olevaan (mielellään vakiokokoiseen) pvm:n.
Näin algoritmistasi tulee myös tehokas koska ei tarvitse välttämättä hakea koko tiedostoa läpi koska voit lopettaa hakemisen sen jälkeen kun tiedostossa oleva päivämäärä on mennyt haettavan pvm:n ohi.
Toivottavasti tuo nyt on riittävän sekavaa... Mut keskeytettiin muutamaan otteeseen tässä kirjoittaessa...
JOo olihan se.. siis oikeeesti kyllä mä tajusin mitä tarkoitit mutta koska en oo paljoa koodannut niin en taida osata tehdä sitä että se vertaa tiedostossa olevaan päivämäärään syötettyä päivämäärää, mutta kiitos todella paljon ja korjaus tuonne aikaisempiin keulimisiini että sain salasanan tolla tavalla toimimaan niin eihän se toiminutkaan, mutta NYT TOIMII..=)
Eihän se vaikeata ole. Näin vielä vähän lisää ajateltuna vois olla kaikkein fiksuinta säilyttää ne pvm:t unix-aikaleimoina. Näin tuon vertailun voi tehdä suoraan < tai > operaattoreilla ilman konvertointeja tai funkkareita.
Jep, NiKC puhuu asiaa. Sit voit sen aikaleiman konvertoida jälkeenpäin date()-funktiolla haluamaasi muotoon helposti, ja tosiaan tuo vertailu käy aikaleimoilla paljon helpommin.
lainaus:
Joo, mutta ei tuo ole vieläkään hyvä kirjautuminen. Laita siihen vielä cookiet niin siinä on jo hieman turvallisuutta.
Ja eikös ne sessionit ollu sitä turvallisuutta? Cookiesta en menis sanomaan.. Sullekki makeuu tekis varmaa hyvää lukee joku opus PHP:n turvallisuustekijöistä?
Ei pidä myöskään unohtaa htaccessia. :)
http://pikseli.biz/
hmm...
Hah.. aika vanha mut en muistanukkaan tota :D:D
Aika veikeä on kieltämättä :D
Aihe on jo aika vanha, joten et voi enää vastata siihen.