Gå til innhold

Hjelp til loginscripts!?


Anbefalte innlegg

Skrevet

Jeg holder på med en hjemmeside for tiden! Har laget en downloadseksjon, og det hadde vært fint om noen hadde hjulpet meg med ett script som gjør at du må registrere deg og logge inn før du får lastet ned noe! Noen?

Videoannonse
Annonse
Skrevet

Det har ikke så veldig mye å si, men jeg vil ha ett ganske enkelt/simpelt skript!

Har søkt litt på hotscripts, er litt avanserte enkelte der..

Skrevet (endret)

Ja, men blir det da mulig å registrere seg selv?

Neppe, skulle hatt ett script som gjør dette, og kanskje med adminfunksjon som kan slette/banne brukere.

Endret av Lernes
Skrevet

Kanskje jeg boer begynne aa lese poster litt bedre foer jeg svarer ;-)

 

Men uansett, umulig er det ikke, men litt knot blir det nok. Saa en innlogging som sjekker mot en database og bruker sessions til aa holde styr paa hvem som har tilgang er vel det beste. Hvis du ikke har funnet noe passende ferdiglagde, er nok sjansen stor for at du maa skrive et selv.

 

Innlogging maa gjerne integreres ganske tett med resten av oppsettet ditt, saa helt generelle ferdiglagde greier blir fort litt jalla (eller veldig overkill).

Skrevet

Okei, fant ett script jeg likte!

Men når folk har logget inn, hvilken kode må jeg skrive for at det skal stå at de har logget inn?! litt dårlig forklart, men noe lignende : Du har logget inn som "her kommer brukernavnet."

Er ikke så dreven på php, så hadde vært fint om noen kan hjelpe meg :)

Skrevet

login.php

Skjult tekst: (Marker innholdet i feltet for å se teksten):


<?php
//
// Start Sessions
//
ob_start();
session_start();

//
// Show the login form
//
echo "<form method='post' action='".$_SERVER['PHP_SELF']."'>";
echo "<table>";
echo "<tr><td><font color=#09c401>Brukernavn:</font></td><td><input type='text' name='username' value='".$_POST['username']."'></td></tr>";
echo "<tr><td><font color=#09c401>Passord:</font></td><td><input type='password' name='password'></td></tr>";
echo "<input type='hidden' name='action' value='1'>";
echo "<tr><td><a href='register.php'><font color=#09c401>Register</font></a></td><td><input type='submit' value='Logg inn'></td></tr>";
echo "</table>";
echo "</form>";

//
// Check login
//
if($_POST['action']=='1'){

// Get form data
$_username = $_POST['username'];
$_password = $_POST['password'];

// Open file
$_filename = "logindata.php";
$_handle = fopen($_filename, "r");
$_contents = fread($_handle, filesize($_filename));
fclose($_handle);
//
// Divide all the users
//
$_divide = explode("&", $_contents);

//
// Check for the username
//
$_array = 0;
while($_divide[$_array] != ''){
list($username, $password, $email, $admin) = explode(";", $_divide[$_array]);

if($username == $_username){
 if($password == $_password){
 	// Set sessions and redirect
 	$_SESSION['logged'] = '73de8dhas7';
 	$_SESSION['username'] = $_username;
 	header("location:downloads.php");
 }else{
   $_echo = "<br><b>Brukernavnet eller passordet er feil</b><br>";
 }
}else{
 	$_echo = "<br><b>Brukernavnet eller passordet er feil!</b><br>";
}

$_array++;
}

echo $_echo;

}

//
// Logout data
//
if($_GET['do'] == 'logout'){
$_SESSION['logged'] = '';
$_SESSION['username'] = '';
$_SESSION['admin'] = '';
echo "<br><b>Du er logget ut!</b><br>";
}
?>

 

main.php

 

Skjult tekst: (Marker innholdet i feltet for å se teksten):

<?php
//
// Start Sessions
//
ob_start();
session_start();

//
// Check sessions
//
if($_SESSION['logged'] != '73de8dhas7'){
header("location:login.php");
exit;
}

//
// Main body
//
// Her vil jeg at det skal stå Du har logget inn som $username! NOEN som vet?
echo "<br>Dette er den passordbeskyttede siden!. <a href='login.php?do=logout'>Logg ut</a><br>";

?>

 

Noen som vet hvordan jeg kan ordne : "Du har logget inn som $username?"

Jeg tar innloggingsinformasjonen fra logindata.php!

Skrevet (endret)

Bytt ut

if($username == $_username){
if($password == $_password){
 // Set sessions and redirect
 $_SESSION['logged'] = '73de8dhas7';
 $_SESSION['username'] = $_username;
 header("location:downloads.php");
}

 

Med

 

if($username == $_username){
if($password == $_password){
 // Set sessions and redirect
echo "Du ble logget inn som $username";
 $_SESSION['logged'] = '73de8dhas7';
 $_SESSION['username'] = $_username;
 header("location:downloads.php");
}

 

I main php:

 

$sessionen=$_SESSION['username'] = $_username;
echo "Du er innlogget, $sessionen";

Endret av erixz
Skrevet (endret)

Bytt ut

if($_SESSION['logged'] != '73de8dhas7'){
header("location:login.php");
exit;
}

 

med

 

if($_SESSION['logged'] != '73de8dhas7'){
$_SESSION['username'];
header("location:login.php");
exit;
}

 

Sessionen username ble ikke tilkalt i begynnelsen av main, lå ikke merke til dette i ste, skal funke nå tror jeg :)

 

EDIT: Glem det over, skrev først feil.

Dette blir riktig:

 

if($_SESSION['logged'] != '73de8dhas7'){
$_SESSION['username'];
header("location:login.php");
exit;
}

 

HUsk også å endre på main.php

 

Dette er feil:

 

$sessionen=$_SESSION['username'] = $_username;
echo "Du er innlogget, $sessionen";

 

Dette er riktig

$sessionen=$_SESSION['username'];
echo "Du er innlogget, $sessionen";

Tror jeg. Ble mye rot

Endret av erixz
Skrevet (endret)

Hmm, skjønner ingen ting her nå.. Funket hverken før eller etter edit! :hmm:

Noen flere som har tips?

 

EDIT: Må prøve siste edit!

Endret av Lernes
Skrevet

Sorry, jeg oppdaget plutselig en feil her og en feil der. Tror alt funker nå dersom du leser forrige post på nytt.

 

Har endret på den 3-4 ganger

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 konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...