[ Príspevkov: 17 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
NapísalOffline : 15.08.2009 17:59 | login

Caute chcem sa spytat ci je tento kod bezbecny. dakujem vam pekne
Login.php
Kód:
<?php
   if(isset($_GET["message"])) $message = "<tr>
      <td style=\"background: #ff0; color: #000\">
      <strong>".$_GET["message"]."</strong>
      </td>
   </tr>
   ";
   if(isset($_COOKIE["logged_in"]) && $_COOKIE["logged_in"] != "" && $_GET["logout"] != "yes") {
   header("Location: index.php");
   exit;
   }
   if($_GET["logout"] == "yes") {
   setcookie("logged_in", "", time()+60*60*24*30, "/");
   header("Location: index.php");
   exit;
   }
?>
<form action="login2.php" method="post">
<table border="2" cellpadding="15" cellspacing="5" style="width: 20%">
   <?=$message?>
<tr>
      <td style="background: #eee; color: #000">
      <strong>User Name</strong>:<br />
      <input maxlength="25" name="login_user_name" size="20" tabindex="1" type="text" /><br /><br />
      <strong>Password</strong>:<br />
      <input maxlength="25" name="login_password" size="20" tabindex="2" type="password" />
      </td>
   </tr>
   <tr>
      <td>
      <strong>Stay logged in for</strong>:<br />
      <select name="logged_in_for" tabindex="3">
         <option value="1">1 day</option>
         <option value="2">2 days</option>
         <option value="3">3 days</option>
         <option value="7">1 week</option>
         <option value="14">2 weeks</option>
         <option value="21">3 weeks</option>
         <option value="31">1 month</option>
         <option value="180">6 months</option>
         <option value="365">1 year</option>
      </select>
      </td>
   </tr>
   <tr>
      <td>
      <input name="submit" tabindex="4" type="submit" value="Login" />
      </td>
   </tr>
</table>
</form>

Login2.php
Kód:
<?php
   $user_name = "test";
   $password = "test";

   $login_user_name = $_POST["login_user_name"];
   $login_password = $_POST["login_password"];
   $logged_in_for = $_POST["logged_in_for"];

   if($login_user_name != $user_name || $login_password != $password) {
   header("Location: login.php?message=Invalid+user+name+or+password.");
   exit;
   }
   else {
   setcookie("logged_in", $login_password, time()+60*60*24*$logged_in_for, "/");
   header("Location: index.php");
   exit;
   }
?>


_________________
FCSpartak Trnava
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 30.04.09
Prihlásený: 11.02.10
Príspevky: 726
Témy: 81 | 81
NapísalOffline : 15.08.2009 18:13 | login

som slaby v tychto veciach ale urcite nie ked mas meno a heslo ulozene priamo v Login2.php


Offline

Čestný člen
Čestný člen
login

Registrovaný: 11.08.07
Príspevky: 4110
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 15.08.2009 18:30 | login

pilná lama glama
To by nevadilo.
kaidžas
Cookies sa daju lubovolne menit priamo v prehliadaci, takze to bezpecne rozhodne nie je. Pouzivaj sessions.


Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 15.08.2009 19:04 | login

ja som tiez v tychto veciach moc zbehly neni, dokazem si to upravit , ale len zaklad, takze asi tolko, myslim ze session urcite sam nezvladnem. dakujem vam


_________________
FCSpartak Trnava
Offline

Čestný člen
Čestný člen
login

Registrovaný: 11.08.07
Príspevky: 4110
Témy: 30 | 30
Bydlisko: Brno
NapísalOffline : 15.08.2009 19:05 | login

Ani si sa o to nepokusil a uz to vraj nezvladnes. Len na uplny zaciatok skriptu hod session_start() a potom normalne pracujes so superglobalnym polom $_SESSION prakticky rovnako, ako s $_COOKIE.


Offline

Užívateľ
Užívateľ
login

Registrovaný: 26.07.06
Prihlásený: 20.03.16
Príspevky: 1383
Témy: 90 | 90
Bydlisko: Slovakia-Ko...
NapísalOffline : 15.08.2009 19:17 | login

na odhlasenie(odstranenie vsetkych sesion) len pouzijes
napr takuto kombinaciu
Kód:
session_start();
      session_unset();
      session_destroy();


to heslo by som ukladal nejak zakryptene napr cez md5 ci sha1

ale jednoznacne cookie nepouzivaj kedze moze si uzivatel manualne slekovat a menit obsah


_________________
CPU: Intel E7200 momentalne default + freezer 7 pro | MB: Gigabyte GA-P35-DS3 rev. 2.0 F14 | RAM: A-DATA 4x1GB EE Vitesta | VGA: ATI Radeon HD4850 Sapphire Dual Slot | Monitor: BenQ E2200HD+17CTX | HDD: WD 3200AAKS + Maxtor 6Y080M0 80GB SATAII + 120GB ATA Barracuda | PSU: Corsair VX450W | Windows 7 Ultimate Sk | REPRO: Logitech X-210
+
IPhone 3GS JB 3.1.3 (new BR)
múdry sa postara o seba ale ešte múdrejši sa postara aj o druhých
Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 15.08.2009 22:06 | login

Mohlo by to vyzerazt nejak takto?
Kód:
<?php
   session_start();
   $user_name = "test";
   $password = "test";

   $login_user_name = $_POST["login_user_name"];
   $login_password = $_POST["login_password"];
   $logged_in_for = $_POST["logged_in_for"];

   if($login_user_name != $user_name || $login_password != $password) {
   header("Location: login.php?message=Invalid+user+name+or+password.");
   exit;
   }
   else {
   session_destroy("logged_in", $login_password, time()+60*60*24*$logged_in_for, "/");
   header("Location: index.php");
   exit;
   }
?>


_________________
FCSpartak Trnava
Offline

Užívateľ
Užívateľ
login

Registrovaný: 10.02.08
Prihlásený: 15.05.17
Príspevky: 2270
Témy: 48 | 48
Bydlisko: Nitra
NapísalOffline : 15.08.2009 22:25 | login

A preco ked sa rovnaju, cize druha cast podmienky, tak pouzivas session_destroy? Takto to ma byt :
Kód:
if ($meno==$overenie_meno & $heslo==$overenie_heslo)
   {session_start ();
   $_SESSION ["logged"] = $meno;
   echo 'prihlaseny';
   }else{
   echo 'zle heslo!';
   exit;}

Potom normalne na zaciatku kazdeho scriptu overujes ci je $_SESSION ["logged"] prazdna funkciou empty() a ked je tak das login a ked nie je tak das stranku s menom prihlaseneho :)


_________________
WYSIWYMGIYRRLAAGW: What You See Is What You Might Get If You’re Really Really Lucky And All Goes Well.
Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 22.08.2009 12:02 | login

Caute chalani: je toto uz lepsie?
Kód:
<form id="form1" name="form1" method="post" action="login.php">
<table width="300" border="0">
<tr>
<td>Meno</td>
<td><input type="text" name="username_field" /></td>
</tr>
<tr>
<td>Heslo</td>
<td><input type="text" name="password_field" /></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="login" value="Prihlás sa" /></td>
</tr>
</table>
</form>

//LOGIN.php

<?php
session_start();
include('config.php');
$username = $_POST['username_field'];
$password = $_POST['password_field'];
if(($username == $user) && ($password == $pass))
{
$hash = md5($pass);
$_SESSION['hash'] = $hash;
echo("Vitaj $username<br>");
}
else
echo("Chybné meno a lebo heslo<br>");
?>

//CONFIG.php

<?php
$user = "test";
$pass= "test";
?>


_________________
FCSpartak Trnava
Offline

Užívateľ
Užívateľ
login

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
NapísalOffline : 22.08.2009 12:43 | login

- session_start(); by si mal dat na zaciatok skriptu inak ti moze pisat hlasky typu: headers already sent by

- Dalej davas do premennych hodnoty, ktore este nie su nastavene. Najprv si to over napr. podmienkou if(isset...

- Pouzivas zbytocne vela zatvoriek

- Zbytocne dlhy nazov username_field a password_field

- Aksi chces overit takto vstup tak premenne $user a $pass by si mal definovat trosku vyssie, nie ?


Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 13.09.2009 11:03 | login

je toto uz bezpecnejsie?
Kód:
<?php
session_start();
$errorMessage = '';
if (isset($_POST['txtUserId']) && isset($_POST['txtPassword'])) {
if ($_POST['txtUserId'] === 'javed' && $_POST['txtPassword'] === 'javed') {
$_SESSION['basic_is_logged_in'] = true;
header('Location: main.php');
exit;
} else {
$errorMessage = 'Sorry, wrong user id / password';
}
}
?>

<form method="post" name="frmLogin" id="frmLogin" action="login.php">
<table width="400" border="1" align="center" cellpadding="2" cellspacing="2">
<tr>
<td width="150">User Id</td>
<td><input name="txtUserId" type="text" id="txtUserId"></td>
</tr>
<tr>
<td width="150">Password</td>
<td><input name="txtPassword" type="password" id="txtPassword"></td>
</tr>
<tr>
<td width="150">&nbsp;</td>
<td><input type="submit" name="btnLogin" value="Login"></td>
</tr>
</table>
</form>
<?
echo " $errorMessage ";
?>


_________________
FCSpartak Trnava
Offline

Užívateľ
Užívateľ
login

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
NapísalOffline : 13.09.2009 11:42 | login

Vidim, ze si tam opravil dost chyb. Ovela lepsie a prehladnejsie :)


Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 13.09.2009 11:53 | login

a bude to stacit pre ochranu dat?


_________________
FCSpartak Trnava
Offline

Užívateľ
Užívateľ
login

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
NapísalOffline : 13.09.2009 12:21 | login

Nevidim v tom nejake velke chyby. Mozno session_start(); by som dal az po kontrole ci heslo a meno je korektne. A do $_SESSION['basic_is_logged_in'] by som asi nedaval true ale meno administratora(pre buducnost).

A potom uz vlastne na kazdej tvojej stranke budes overovat ci je platna session.


Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 13.09.2009 12:50 | login

cize nejak takto?
Kód:
<?php
session_start();
if (!isset($_SESSION['basic_is_logged_in'])
    || $_SESSION['basic_is_logged_in'] !== true) {
    header('Location: login.php');
    exit;
}
?>


_________________
FCSpartak Trnava
Offline

Užívateľ
Užívateľ
login

Registrovaný: 31.05.09
Prihlásený: 02.06.17
Príspevky: 562
Témy: 37 | 37
Bydlisko: BegyBen
NapísalOffline : 13.09.2009 13:01 | login

Ano, na zaciatok suboru das nieco take. Jednoducho povedane, zistis ci session zije,popripade overis jeho hodnotu, ak je vsetko ok, zobrazis obsah...

Co vsetko chces menit pomocou tej administracie na stranke prip. ake tam chces mat administratorske moznosti?


Offline

Užívateľ
Užívateľ
login

Registrovaný: 09.03.08
Prihlásený: 22.12.10
Príspevky: 356
Témy: 85 | 85
Bydlisko: Topoľčany
Napísal autor témyOffline : 13.09.2009 13:29 | login

no hlave menit obsah indexu, vies taky novinkovy system, a este menit ci su lanovky zjazdne a snehove podmienky cez zimu, nic komplikovane...


_________________
FCSpartak Trnava
 [ Príspevkov: 17 ] 


login



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

login

v PHP, ASP

2

397

26.02.2009 15:01

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Login

v Redakčné systémy

4

1011

01.06.2006 12:53

Exodus

V tomto fóre nie sú ďalšie neprečítané témy.

Chyba login

v PHP, ASP

6

193

22.04.2016 23:58

martinius96

V tomto fóre nie sú ďalšie neprečítané témy.

login tabulka

v Redakčné systémy

0

996

08.04.2006 14:27

pe3x

V tomto fóre nie sú ďalšie neprečítané témy.

admin login

v Ostatné programy

3

259

20.06.2010 20:46

Milanese

V tomto fóre nie sú ďalšie neprečítané témy.

login SESSION

v PHP, ASP

4

128

08.05.2014 11:38

Ďuri

V tomto fóre nie sú ďalšie neprečítané témy.

Proftpd login

v Operačné systémy Unix a Linux

1

189

25.04.2012 23:00

webkar

V tomto fóre nie sú ďalšie neprečítané témy.

jednoduchy login

v Ostatné

7

232

05.09.2013 14:03

vama

V tomto fóre nie sú ďalšie neprečítané témy.

login - prihlasenie

v PHP, ASP

27

348

28.11.2013 10:58

Elrohir

V tomto fóre nie sú ďalšie neprečítané témy.

icq login

v Sieťové a internetové programy

15

1288

07.05.2008 21:47

lio

V tomto fóre nie sú ďalšie neprečítané témy.

Admin + login

v PHP, ASP

1

331

30.12.2009 22:27

tomxi

V tomto fóre nie sú ďalšie neprečítané témy.

Nejaký login

v Redakčné systémy

3

336

14.03.2007 19:53

p360t

V tomto fóre nie sú ďalšie neprečítané témy.

Remote login?

v PHP, ASP

3

278

21.01.2011 18:10

d0.0b

V tomto fóre nie sú ďalšie neprečítané témy.

WordPress login widget

v Redakčné systémy

11

201

10.08.2014 15:09

don jebot

V tomto fóre nie sú ďalšie neprečítané témy.

PHP login script

v PHP, ASP

7

954

08.02.2010 8:42

juho

V tomto fóre nie sú ďalšie neprečítané témy.

Root login Solaris

v Operačné systémy Unix a Linux

2

121

17.06.2013 15:55

Ďuri



© 2005 - 2018 PCforum, edited by JanoF