Vinnaren i pepparkakshustävlingen!
2008-03-27, 09:28
  #1
Medlem
jonnie83s avatar
Hej alla.

Är rätt så ny i php världen och sql världen.
Men tänkte leka lite med en liten inloggning till hemsidan. Men sen blir jag helt mörkrädd när jag läser alla hål som man måste täppa till.
Eller det är inte så hemskt mycket som man måste tänka på? Jag är ju som sagt väldigt nybörjare. Och känner väl inte jätte mycket för att lägga ner massa timmar bara för att kanske få ett säkert login script.

Så min fråga är. Har ni några tips om färdiga login script? Har kollat runt rätt länge på hot scripts men vågar inte chansa där heller. Eftersom jag inte är helt insatt i vad där finns för några faror.

Kanske jag som är extremt nojig men ni kan väl kanske hjälpa mig lite i rätt riktning?

mvh
Jonnie
Citera
2008-03-27, 12:38
  #2
Medlem
mannenmedhattens avatar
Det finns en del script som är bra att tanka. Länken nedan är till en av dem som är lite mer avancerad.

http://www.evolt.org/PHP-Login-Syste...Admin-Features

Det är en tutorial med bra dokumentation som beskriver det den gör. Kanske kan vara något?
Citera
2008-03-27, 12:51
  #3
Medlem
jonnie83s avatar
Citat:
Ursprungligen postat av mannenmedhatten
Det finns en del script som är bra att tanka. Länken nedan är till en av dem som är lite mer avancerad.

http://www.evolt.org/PHP-Login-System-with-Admin-Features

Det är en tutorial med bra dokumentation som beskriver det den gör. Kanske kan vara något?

Man får tacka! Det var ju kanske lite väl avancerat men det var intressant o titta på det. Det är ju hemskt mycket kod om inget annat

Hittade ett på Phpportalen
Och för mig så räcker det med ett sådant login. Men frågan är hur säkert är det? Och sen ska man ha hashade password i databasen osv.
Eller räcker det med detta för att få ett hyfsat säker inloggning? Eller det är lika bra att göra det ordentligt medan man ändå är igång?
Citera
2008-03-27, 12:56
  #4
Medlem
Cisco9s avatar
Detta brukar jag rekommendera till de flesta nybörjare:

http://www.phpportalen.net/viewtopic.php?t=4403

Haha såg att du länkade till det i ditt senaste inlägg nu. Nåja, Kör på det
Citera
2008-03-27, 14:02
  #5
Medlem
jonnie83s avatar
Citat:
Ursprungligen postat av Cisco9
Detta brukar jag rekommendera till de flesta nybörjare:

http://www.phpportalen.net/viewtopic.php?t=4403

Haha såg att du länkade till det i ditt senaste inlägg nu. Nåja, Kör på det

Hehe okay men det är ju kanon. Det är ju ett script som jag iaf förstår mig på.
Kan fråga dig då.. vad anser du om att kryptera lösenorden i databasen? Och framförallt vart ska man förvara den filen med lösenord osv. Eller den kan ligga lite undangömt bara på webservern?
Citera
2008-03-27, 17:56
  #6
Medlem
Optimists avatar
Själva scriptet är relativt säkert, fast du kan göra en del förbättringar på det.
Det kan vara bra att hasha och salta lösenorden.
Om du utgår ifrån scriptet på phpportalen kan du lägga till denna funktion i conn.php, och sedan anropa denna före du stoppar in lösenorden i databasen, samt när du ska jämföra inskrivet lösenord med det som finns i databasen.

Kod:
function create_hash ($plain_text)
{
$hash_salt "=random texträng med s1ffr0r och.skiljetecken.";
return 
hash('sha512'$hash_salt.$plain_text.$hash_salt);

Fast iofs kanske det är lite överkurs, och får någon tag i hasharna har du ändå klåpat dig någonstans.

Angående 'filen med lösenord' kanske du menar just conn.php? Den behöver du inte gömma på något sätt, ingen kan läsa lösenorden utifrån.

Om du nu inte ska skydda väldigt hemliga saker tycker jag att du kan köra med scriptet precis som det är. Du kan ju lägga till förbättringar vartefter du lär dig mera.
Citera
2008-10-22, 23:08
  #7
Avstängd
Gothenburgs avatar
Citat:
Ursprungligen postat av Cisco9
Detta brukar jag rekommendera till de flesta nybörjare:

http://www.phpportalen.net/viewtopic.php?t=4403

Haha såg att du länkade till det i ditt senaste inlägg nu. Nåja, Kör på det
Hur gör jag för att sätta ett sånt här script?, någon som har någon bra guide, jag är helt ny på det här, behöver en inloggnings sida där jag kan skapa konton och själv välja lösenord, sedan måste jag verifiera dom för att sedan låta folk få sin personliga inloggning skickat till sig. Och sedan där inne ska det finnas cirka 300 dokument. Eller sidor där dom finns skrivna på.

Mvh.
Citera
2008-10-22, 23:55
  #8
Avstängd
Gothenburgs avatar
Tankat detta scripet.
http://www.advancescripts.com/detailed/1229.html

Är helt ny inom PHP och behver lite hjälp med vart man laddar upp filerna osv.
Så här ser mappen ut:
http://i34.tinypic.com/1690tbt.jpg
Vart ska man ladda upp respektive fil?..

Såhär står det i README filen:
Citat:
You will need to add the usernames and passwords to the "dataProcess.php" page.
You will also need to add the usernames to the "secure.php" page.
The user.log file will have to have read/write permissions or else you will see this error:

"You will have to log on via the form to view this page"

Men jag förstår inte vart jag lägger in användarnamnen och lösen, asså vart i koden:

"Secure" PHP Scriptet:
Citat:
<?php

// Secure multiple user Log-In script by Dave Lauderdale - Originally published at: www.digi-dl.com

$filename = "user.log";
$log = fopen($filename, "r");
$contents = fread($log, filesize($filename));
fclose($log);

// Add usernames below
if ($contents == "name1" || $contents == "name2" || $contents == "name3") {

$filename = "user.log";
$log = fopen($filename, "w+");
fputs($log,"");
fclose($log);
echo <<<EOF
<!-- ################################################## ##### -->
<!-- ################################################## ##### -->
<!-- Begin your HTML below -->






<br><br>
<center>
<h1 style="font:12pt arial">THIS IS A SECRET PAGE</h1>









<!-- End your HTML above -->
<!-- ################################################## ##### -->
<!-- ################################################## ##### -->
EOF;
}
else echo "<center><Br><font color=red face=arial size=3 >Error</font>...<font face=arial size=3 >You will have to log on via the log on form to view this page.<br><br><a href='login.html' style='color:black'>Click here</a> to try again.";
?>


"dataProcess" PHP Scriptet:

Citat:
<?php

$namePassCombos = array (

"name1" => "pass1", // Add as many usernames and passwords as you wish here
"name2" => "pass2", // Be sure to add these usernames to "secure.php" page also
"name3" => "pass3"

);

// Secure multiple user Log-In script by Dave Lauderdale - Originally published at: www.digi-dl.com

$loginName = $_POST['loginName']; $passWord = $_POST['passWord'];
$passWord = preg_replace ("/</","[",$passWord); $loginName = preg_replace ("/>/","]",$loginName);
$loginName = str_replace(".."," ",$loginName); $passWord = str_replace(".."," ",$passWord);
$loginName=trim($loginName); $passWord=trim($passWord);

function success($loginName)
{
$filename = "user.log";
$log=fopen($filename, "w+");
fputs($log, $loginName);
fclose($log);
Header("Location: secure.php");
}

function error($notice){
if($notice=="0"){
echo"
<title>Log-In Error: Absent username / password</title>
<body><br><p style=\"font:11pt arial\"><font color=red>NOTICE:</font> Log-In Error: Absent username / password.
<br><br><br>Click <a href=\"javascript:history.back(1)\" style=\"color:black\">here</a> to try again.
</body></html>
"; exit;
}

if($notice=="1"){
echo"
<title>Log-In Error: Incorrect username / password</title>
<body><br><p style=\"font:11pt arial\"><font color=red>NOTICE:</font> Log-In Error: Incorrect username / password.
<br><br><br>Click <a href=\"javascript:history.back(1)\" style=\"color:black\">here</a> to try again.
</body></html>
"; exit;
}
}

if (($loginName == "") || ($passWord == "")) { $notice=0; error($notice); }
else if (strcmp($namePassCombos[$loginName],$passWord) != 0) { $notice=1; error($notice); }
else if (strcmp($namePassCombos[$loginName],$passWord) == 0) { success($loginName); }
?>
Citera
2008-10-22, 23:57
  #9
Avstängd
Gothenburgs avatar
Själva tanken med sidan är att jag ska ha cirka 300 texter som folk ska kunna läsa.
Men för att folk ska kunna läsa ska dom betala en viss summa och sedan få ett Användarnamn och Lösenord.

Så jag måste även veta hur jag får dom att komma till sidan där jag har alla texter när dom har loggat in.

Skulle vara mycket tacksam om någon ville hjälpa till.


Mvh.
__________________
Senast redigerad av Gothenburg 2008-10-23 kl. 00:00.
Citera
2008-10-23, 01:44
  #10
Avstängd
Gothenburgs avatar
Någon vet väl?
Citera
2008-10-23, 06:19
  #11
Moderator
Protons avatar
Citat:
Ursprungligen postat av Gothenburg
Någon vet väl?


Kolla i php-manualen på header-funktionen, http://se.php.net/manual/en/function.header.php

header("location: www.nånting.com");
Citera
2008-10-23, 07:27
  #12
Avstängd
Gothenburgs avatar
Citat:
Ursprungligen postat av Proton
Kolla i php-manualen på header-funktionen, http://se.php.net/manual/en/function.header.php

header("location: www.nånting.com");
Det löste sig.
Citera

Stöd Flashback

Flashback finansieras genom donationer från våra medlemmar och besökare. Det är med hjälp av dig vi kan fortsätta erbjuda en fri samhällsdebatt. Tack för ditt stöd!

Stöd Flashback