karryboh Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) Jeg kan så å si ingen ting om PHP og MySQL. Er det noen som vet hvordan man lager en enkel login-boks som fører til login-området på en hjemmeside? Og slik at når man kommer til login-området at det ikke er så enkelt som å bare kopiere linken og gå inn på login-området uten å ha skrevet passord/brukernavnet først?? Jeg ønsker altså en enkel login-mulighet. Ikke noe sånn som registrering og flere bruker osv. Kort sagt at man trenger kun å skrive inn brukernavn og passord for så å komme til "medlemsområdet". Man må heller ikke kunne lese passordet og brukernavnet i kilde-koden. *jeg bruker dreamweaver 8* noen som kan hjelpe?? Endret 29. april 2007 av karryboh Lenke til kommentar
nree Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) <?php session_start(); function innlogget() { echo("<h2>Du er logget inn!</h2>"); // Kjør f.eks include her.. // Husk session_start(); og if($_SESSION['innlogget'] !== 1) { } i de filene du inkluderer. } if($_SESSION['innlogget'] !== 1) { if(empty($_POST['submit'])) { echo("<form action=\"\" method=\"post\"> <table><tr><td>Brukernavn:</td><td><input type=\"text\" name=\"brukernavn\" /></td></tr> <tr><td>Passord:</td><td><input type=\"password\" name=\"passord\" /></td></tr> <tr><td></td><td><input type=\"submit\" value=\"Logg inn\" name=\"submit\" /></td></tr> </table> "); } else { $brukernavn = "admin"; // Brukernavn $passord = "md5pw"; // Passord; Md5 eller ikke.. whatever // Skjekker om brukernavn og passord stemmer med variablene if(strip_tags($_POST['brukernavn']) == $brukernavn) { if(strip_tags($_POST['passord']) == $passord or $_POST['passord'] == md5($passord)) { // Setter sessions og starter innlogget funksjon. $_SESSION['brukernavn'] = $brukernavn; $_SESSION['innlogget'] = 1; innlogget(); } else { echo("Feil passord!"); } } else { echo("Feil brukernavn!"); } } } else { innlogget(); } ?> Skrevet i farten, så er ikke testet skikkelig, uansett er det bare å spørre Endret 29. april 2007 av goggen90 Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 (endret) <?php session_start(); function innlogget() { echo("<h2>Du er logget inn!</h2>"); // Kjør f.eks include her.. // Husk session_start(); og if($_SESSION['innlogget'] !== 1) { } i de filene du inkluderer. } if($_SESSION['innlogget'] !== 1) { if(empty($_POST['submit'])) { echo("<form action=\"\" method=\"post\"> <table><tr><td>Brukernavn:</td><td><input type=\"text\" name=\"brukernavn\" /></td></tr> <tr><td>Passord:</td><td><input type=\"password\" name=\"passord\" /></td></tr> <tr><td></td><td><input type=\"submit\" value=\"Logg inn\" name=\"submit\" /></td></tr> </table> "); } else { $brukernavn = "admin"; // Brukernavn $passord = "md5pw"; // Passord; Md5 eller ikke.. whatever // Skjekker om brukernavn og passord stemmer med variablene if(strip_tags($_POST['brukernavn']) == $brukernavn) { if(strip_tags($_POST['passord']) == $passord or $_POST['passord'] == md5($passord)) { // Setter sessions og starter innlogget funksjon. $_SESSION['brukernavn'] = $brukernavn; $_SESSION['innlogget'] = 1; innlogget(); } else { echo("Feil passord!"); } } else { echo("Feil brukernavn!"); } } } else { innlogget(); } ?> Skrevet i farten, så er ikke testet skikkelig, uansett er det bare å spørre 8498003[/snapback] Takk! men hva gjør jeg så med dette? plasserer det der jeg skal ha login-boksen?? skal jeg ikke legge inn noen koder på medlemssiden? >> jeg har prøvd å sette inn koden, men den ser ikke ut til å funke..?? hva nå? Endret 29. april 2007 av karryboh Lenke til kommentar
mske Skrevet 29. april 2007 Del Skrevet 29. april 2007 Hei! Omtrent samme spørsmål er stilt i en annen tråd nylig, så jeg poster mitt login-script her jeg. Hei Dette scriptet vil jeg tro skal passe til det du ønsker: <?php ob_start(); session_start(); $password = sha1($_POST['password']; $login_pass = sha1("passordet for å komme inn på siden"); if($password != $login_pass) { header("Location: login.html"); exit; } else { $_SESSION['online'] = TRUE; header("Location: startside.php"); } ob_end_flush(); ?> Så legger du dette øverst i alle filer du vil at folk må være innlogget for å kunne se: <?php ob_start(); session_start(); if($_SESSION['online'] != TRUE) { header("Location: login.html"); exit; } ?> //HTML her.. Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 Hei! Omtrent samme spørsmål er stilt i en annen tråd nylig, så jeg poster mitt login-script her jeg. Hei Dette scriptet vil jeg tro skal passe til det du ønsker: <?php ob_start(); session_start(); $password = sha1($_POST['password']; $login_pass = sha1("passordet for å komme inn på siden"); if($password != $login_pass) { header("Location: login.html"); exit; } else { $_SESSION['online'] = TRUE; header("Location: startside.php"); } ob_end_flush(); ?> Så legger du dette øverst i alle filer du vil at folk må være innlogget for å kunne se: <?php ob_start(); session_start(); if($_SESSION['online'] != TRUE) { header("Location: login.html"); exit; } ?> //HTML her.. 8498037[/snapback] dette funker sikkert, men kan du forklare hvordan du går frem for å sette det inn og hvilke sider man må opprette? Lenke til kommentar
mske Skrevet 29. april 2007 Del Skrevet 29. april 2007 La oss si du har en form , som sender dataene til filen login.php. Lagre den første koden min i filen login.php , og i hver fil du vil at man skal ha passord for å kunne se, legger du den andre koden min. Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 (endret) La oss si du har en form , som sender dataene til filen login.php. Lagre den første koden min i filen login.php , og i hver fil du vil at man skal ha passord for å kunne se, legger du den andre koden min. 8498213[/snapback] Skal jeg legge den første koden i en blank PHP-side? hvordan er det med form? Skal jeg sende dataen i form'en til den tomme siden login?? er dette skriptet for både brukernavn og passord?? >> prøvde dette men det gikk an å komme inn på medlemssiden med alle verdens passord + at jeg fikk beskjed om at jeg måtte lagre/åpne PHP dokumentet... hva nå?? Endret 29. april 2007 av karryboh Lenke til kommentar
grimjoey Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) <?php $user = 'brukernavn'; $passwd = 'hemmelig passord'; // spiller ikke stor rolle om passordet er klartekst. kilden vil ikke være synlig med mindre php modulen til serveren crasher session_start(); // behandle innlogging if(isset($_POST['submit_login'])) { if(!strcmp($passwd, $_POST['password']) && !strcmp($user, $_POST['username'])) $_SESSION['innlogget'] = true; header("Location: ".$_SERVER['PHP_SELF']); } // hvis ikke innlogget, logge inn if(!isset($_SESSION['innlogget'])) { echo " <html> <head><title>Logg inn</title></head> <body> <table> <form action='' method='post'> <tr><td>Brukernavn:<td><input type='text' name='username' value=''> <tr><td>Passord:<td><input type='password' name='password' value=''> <tr><td align='center' colspan='2'><input type='submit' name='submit_login' value='Logg inn'> </form> </body> </html> "; // hvis ikke ikke innlogget altså innlogget, vis skjult side } else { echo <<< EOE <html> <head> <title></title> </head> <body> skjult side her. </body> </html> EOE; } ?> edit: burde virke nå Endret 29. april 2007 av grimjoey Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 (endret) <?php $user = 'brukernavn'; $passwd = 'hemmelig passord'; // spiller ikke stor rolle om passordet er klartekst. kilden vil ikke være synlig med mindre php modulen til serveren crasher session_start(); // behandle innlogging if(isset($_POST['submit_login'])) { if(!strcmp($passwd, $_POST['password']) && !strcmp($user, $_POST['username'])) $_SESSION['innlogget'] = true; header("Location: ".$_SERVER['PHP_SELF']); } // hvis ikke innlogget, logge inn if(!isset($_SESSION['innlogget'])) { echo " <html> <head><title>Logg inn</title></head> <body> <table> <form action='' method='post'> <tr><td>Brukernavn:<td><input type='text' name='username' value=''> <tr><td>Passord:<td><input type='password' name='password' value=''> <tr><td align='center' colspan='2'><input type='submit' name='submit_login' value='Logg inn'> </form> </body> </html> "; } else { echo <<< EOE <html> <head> <title></title> </head> <body> skjult side her. </body> </html> EOE; } ?> edit: burde virke nå 8498402[/snapback] jeg har prøvd koden, men når jeg lastet den opp kom det en slik boks jeg ønsker med brukernavn, passord og login, men hvorfan får jeg den til å funke?? forresten kom det denne teksten under boksen: "; } else { echo <<< EOE login.php EOE; } ?> Må jeg ikke gjøre noe med medlemssidene?? slik at man ikke kan bare kopiere linken og se siden uten passord?? Endret 29. april 2007 av karryboh Lenke til kommentar
grimjoey Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) er login.php noe du har skrevet? for å inkludere en side må du bruke: include('side.php'); og forøverig fjerne echo <<< EOE ... EOE; Endret 29. april 2007 av grimjoey Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 (endret) er login.php noe du har skrevet? 8498485[/snapback] Ja det er det :S men det samme kom opp uten det og.. bare med "skriv inn tekst (skjult side her)".. eller noe sånt. Endret 29. april 2007 av karryboh Lenke til kommentar
grimjoey Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) prøv å cutnpaste koden min igjen. mulig du ikke fikk med deg de siste endringene. og test den uten endring. så kan du legge inn endringer etter at du vet det fungerer. edit: skal du inkludere sider er det lettere for andre å komme inn på sidene en hvis du legger koden min i hver fil du vil skjule. du kan lage en fil som inneholder brukernavn og passord variablene. så inkluderer du den filen i toppen og fjerner brukernavn og passord variablene derfra så legger du koden frem til den siste else { inn i begynnelsen på hver fil du vil skjule og } ?> i slutten av filene Endret 29. april 2007 av grimjoey Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 (endret) er login.php noe du har skrevet? for å inkludere en side må du bruke: include('side.php'); og forøverig fjerne echo <<< EOE ... EOE; 8498485[/snapback] Nå kom dette under: "; // hvis ikke ikke innlogget altså innlogget, vis skjult side } else { skjult side her. EOE; } ?> Endret 29. april 2007 av karryboh Lenke til kommentar
grimjoey Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) tror jeg skjønner litt hva som skjer her. php er et server-side script. har du en php enabled web server? eller kjører du filene direkte fra disken? Endret 29. april 2007 av grimjoey Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 prøv å cutnpaste koden min igjen. mulig du ikke fikk med deg de siste endringene. og test den uten endring. så kan du legge inn endringer etter at du vet det fungerer. edit: skal du inkludere sider er det lettere for andre å komme inn på sidene en hvis du legger koden min i hver fil du vil skjule. du kan lage en fil som inneholder brukernavn og passord variablene. så inkluderer du den filen i toppen og fjerner brukernavn og passord variablene derfra så legger du koden frem til den siste else { inn i begynnelsen på hver fil du vil skjule og } ?> i slutten av filene 8498536[/snapback] jeg skjønner ikke helt dette?:S Kan du forklare hvilke sider jeg trenger. Jeg skal la folk logge inn på Index-siden, så skal de komme til medlemssiden. Hva skal jeg kalle medlemssiden (.php?). Hvordan får jeg at login-boksen fører til medlemssiden?? Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 tror jeg skjønner litt hva som skjer her. php er et server-side script. har du en php enabled web server? eller kjører du filene direkte fra disken? 8498572[/snapback] jeg tester dem ved å laste dem opp for så å se dem i virkelig live. se spørsmål under.. Lenke til kommentar
grimjoey Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) du trenger ikke flere sider. koden min er både login side og innholdsside. er det bare en medlemsside kopierer du bare innholdet fra den inn i den siste else {} i koden min. ... <?php ... // hvis ikke ikke innlogget .... } else { #echo <<< EOE ... EOE; fjernes include('dinside.php'); } ?> eller: du kan lime inn siden ... <?php ... // hvis ikke ikke innlogget .... } else { echo <<< EOE siden din limes inn her... EOE; } ?> for å sjekke om du har php på serveren kan du jo laste opp en side som kun inneholder: <?php die('jeg har php jippi.'); ?> jeg har ikke php Endret 29. april 2007 av grimjoey Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 du trenger ikke flere sider. koden min er både login side og innholdsside. er det bare en medlemsside kopierer du bare innholdet fra den inn i den siste else {} i koden min. ... <?php ... // hvis ikke ikke innlogget .... } else { #echo <<< EOE ... EOE; fjernes include('dinside.php'); } ?> eller: du kan lime inn siden ... <?php ... // hvis ikke ikke innlogget .... } else { echo <<< EOE siden din limes inn her... EOE; } ?> for å sjekke om du har php på serveren kan du jo laste opp en side som kun inneholder: <?php die('jeg har php jippi.'); ?> jeg har ikke php 8498651[/snapback] Beklager men jeg skjønner ikke :S Kan du forklare stegvis hvordan det gjøres. fra starten av hvilke sider som skal opprettes osv. Lenke til kommentar
grimjoey Skrevet 29. april 2007 Del Skrevet 29. april 2007 (endret) det første du bør gjøre er å overbevise meg om at du har php på serveren. det gjør du ved å lage og laste opp en fil: test.php <?php die('PHP virker'); ?> php virker ikke fortell meg resultatet Endret 29. april 2007 av grimjoey Lenke til kommentar
karryboh Skrevet 29. april 2007 Forfatter Del Skrevet 29. april 2007 det første du bør gjøre er å overbevise meg om at du har php på serveren. det gjør du ved å lage og laste opp en fil: test.php <?php die('PHP virker'); ?> php virker ikke fortell meg resultatet 8498716[/snapback] Jeg lastet opp og så på siden. Jeg fikk beskjed om å åpne eller lagre PHP siden. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå