Heslo
Napsal: sob 17. čer 2006, 09:23
Chtěl bych umístit na stránku odkaz kde by měl přístup pouze ten kdo by napsal heslo.Jde něco takového udělat ?
Kód: Vybrat vše
<?php
$detpass = $_POST["pdetpass"];
$pass = "nejake.heslo"; //sem napis jake heslo chces
if ($detpass == $pass) {
Header("Location: http://www.celaadresa.cz"); //napis adresu stranky kam chces presmerovat
Header("Connection: close");
die;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Nadpis</title>
</head>
<body>
<form action="" method="post">
<input type="password" name="pdetpass" />
<input type="submit" value="OK" />
</form>
</body>
</html>
to je mnohem bezpečnějšísheriff.wiggum píše:co autorizace pres htaccess?
Jak jsi na to prisel ?PCMark píše:to je mnohem bezpečnější
"Nejlepší systém ochrany údajů je autentifikace přímo na serveru."matajon píše:Jak jsi na to prisel ?PCMark píše:to je mnohem bezpečnější
Ano, tedy PHP, .htaccess, a další server-side aplikacePCMark píše:"Nejlepší systém ochrany údajů je autentifikace přímo na serveru."
Tím citátem nebyl myšlený java skript, ale přímo konfigurace serveru pomocí .htaccess a .htpasswd.sovicka píše:Tím citátem bylo myšleno použití například JavaScriptu, který je pro tento účel zcela nevhodný
osobně bych to dál moc neřešil, přece jen nevíme co autor threadu vlastně potřebujeTrinom píše:a co použít HTTPS + PHP/.htacces?
Mám webhosting na webzdarma. Chci tam umístit stránku s tématem fotografie. Zaheslovat bych chtěl jeden odkaz kde budou mít přístup jen moji známý.Jsem úplnej začátečník, vše dělám ve Frontpage.Ale jinak moc díky za názory.zombux píše:osobně bych to dál moc neřešil, přece jen nevíme co autor threadu vlastně potřebujeTrinom píše:a co použít HTTPS + PHP/.htacces?je dost možný že má hosting bez PHP atd, tam už by byla jediná možnost a to javascript kterej louskne kdokoliv kdo umí zobrazit jeho zdroják. je taky možný že na serveru není povolen .htaccess... prostě nedostatečně zadanej problém
Hm a co když někdo zadá tu adresu přímo, pak se ho to na heslo ptát nebude. Cookie,Sessions(raději)...?sovicka píše:Tady máš takový malý skriptík v PHP - spíchnul jsem to za pár minutek, takže nemá ani ošetřené stavy (špatné heslo, dlouhé heslo, ...). Ovšem funkci plní.//edit: předěláno na POST, GET by totiž asi nebyl moc bezpečnýKód: Vybrat vše
<?php $detpass = $_POST["pdetpass"]; $pass = "nejake.heslo"; //sem napis jake heslo chces if ($detpass == $pass) { Header("Location: http://www.celaadresa.cz"); //napis adresu stranky kam chces presmerovat Header("Connection: close"); die; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html> <head> <title>Nadpis</title> </head> <body> <form action="" method="post"> <input type="password" name="pdetpass" /> <input type="submit" value="OK" /> </form> </body> </html>
No, já si myslím, že by mu to mohlo stačit, protože koho zajímaj něčí rodinný fotky. Jinak trošku jiný skript, kterej používám já...bubanek píše:Hm a co když někdo zadá tu adresu přímo, pak se ho to na heslo ptát nebude. Cookie,Sessions(raději)...?
Kód: Vybrat vše
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Titulek</title>
<link rel="stylesheet" type="text/css" href="../foto.css">
</head>
<h2>Zaheslovaná galerie</h2>
<?
if($heslo != "heslo"): ?>
<!--přihlašovací formulář -->
<form action="anygal.php">
Zadej heslo: <input type=password name="heslo">
<input type=submit>
</form>
<? ; else: ?>
<body>
Nějaký fotečky
<? endif ?>
</body>
</html>to neni zrovna pravda... co přepis MD5 pro JavaScript?zombux píše: javascript kterej louskne kdokoliv kdo umí zobrazit jeho zdroják
Kód: Vybrat vše
<?php
session_start();
$detpass = $_POST["pdetpass"];
$pass = "nejake.heslo"; //sem napis jake heslo chces
if ($detpass == $pass) {
$IP = $_SERVER['REMOTE_ADDR'];
$IPP = explode(".",$IP); //zkratka pro IP_POLE ;-)
$IP_OTISK = md5(($IPP[0]+36985)*($IPP[1]+123456)*($IPP[2]-689)*(($IP[3]-66)*3/2));
$_SESSION['secure'] = $IP_OTISK;
Header("Location: http://www.celaadresa.cz"); //napis adresu stranky kam chces presmerovat
Header("Connection: close");
die;
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<title>Nadpis</title>
</head>
<body>
<form action="" method="post">
<input type="password" name="pdetpass" />
<input type="submit" value="OK" />
</form>
</body>
</html>Kód: Vybrat vše
<? include 'soubor.php'; ?>Kód: Vybrat vše
<?php
session_start();
$IP = $_SERVER['REMOTE_ADDR'];
$IPP = explode(".",$IP); //zkratka pro IP_POLE ;-)
$IP_OTISK = md5(($IPP[0]+36985)*($IPP[1]+123456)*($IPP[2]-689)*(($IP[3]-66)*3/2));
if ($_SESSION['secure'] != $IP_OTISK){
exit('Neplatné spojení');
}
?>
Kód: Vybrat vše
<?
require("db_pripojeni.php");
if($_GET['action'] == login){
login($_POST['login'], $_POST['password']);
}
// login
function login($login, $password){
$res = mysql_query( "SELECT `Id` FROM `users` WHERE (`Login`='$login') AND (`Password`='$password')" );
while($user = mysql_fetch_array($res)){
header("Location: ___ tajna www___ ");
exit;
}
header("Location: login.php");
exit;
}
?>
<html>
<head>
<title>Nadpis</title>
</head>
<body>
<form action="login.php?action=login" method="post">
<input type="text" name="login">
<input type="password" name="password">
<input type="submit" value="OK">
</form>
</body>
</html>
Kód: Vybrat vše
if($_POST['heslo'] != "heslo"):
<form method="POST"...>
Tak, nejsem Triton, ale Trinom, ale to je fuk. Jakou úpravu bys navrhoval?Lamicz píše:EDIT: TO Tritonovo nemusi fungovat (a asi nebude), protoze:
Kód: Vybrat vše
if($_POST['heslo'] != "heslo"): <form method="POST"...>