Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Kako zastiti stranicu?

[es] :: PHP :: Kako zastiti stranicu?

[ Pregleda: 3797 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

djovan01

Član broj: 75700
Poruke: 196
*.dsl.sfldmi.ameritech.net.



Profil

icon Kako zastiti stranicu?20.12.2006. u 16:11 - pre 210 meseci
napravila sam log in prompt koji pri unosu odredjenoh user name i pass prebacuje korisnika na odredjenu stranicu.

znaci korsnik pocinje od stranice www.blakompanija.com/login.html i posle bude prebacen na stranicu www.blakompanija.com/stranica1.html . kako da ucinim da ukoliko neko pokusa direktno da pristupi stranici1.html bude sprecen i ponovo bude trazeno da ukuca user i pass.


hvala
 
Odgovor na temu

Dragan BL
Dragan Lalos
Banja Luka

Član broj: 79680
Poruke: 96
*.poen.net.

Sajt: www.micronanostudio.com


Profil

icon Re: Kako zastiti stranicu?20.12.2006. u 17:24 - pre 210 meseci
Ako predpostavimo da username i password imas u bazi, pa kada user unese "username" i "password" ti provijeris to i prebacis ga na sljedecu stranicu.

Jedno od resenja je sljedece:

Prije nego usera prebacis na drugu stranicu kreiraj sesije.

Primjer:

Code:
if(isset($_POST['login_submit']))  //provjerava da li je user kliknuo na dugme
{
    $username = $_POST['username'];
    $password = $_POST['password'];
    
    if() //ovde pises svoj uslov sa kojim provjeravas username i password da li je tacan
    {
                //ako je tacan kreirace se sesija

        // session
        session_start();
        // session
        $_SESSION['username']    = $username;
        $_SESSION['password']    = $password;
            
                //user ce biti prebacen na neku stranicu
        header("Location: http://www.blakompanija.com/stranica1.html ");
    }
    else
       {
             //u slucaju da su username i password pogresni vrati ce ga na login page
            header("Location: http://www.blakompanija.com/login.html");
       }

Primjer koda koji tebe sada interesuje je sljedeci:

Ovo stavljas na svaku stranicu u kojoj zelis da user ne moze direktno da pristupi, tj. moze samo da pristupi ako je prethodno unio username i password (jer je sa tacnim unosom kreirao i sesije)


Code:
session_start();       //starta sesiju

//zapisuje username i password u varijable da bi dalje mogao provijeriti
$username     = $_SESSION['username'];
$password     = $_SESSION['password'];

if(!) //provjeravas username i password i ako uslov nije ispunjen vracas ga na logn page
{    
    header("Location: http://www.blakompanija.com/login.html");
}



Ovo je napamet pisano nije provjereno, pa ako ima bugova javi ili ako ti nije nesto jasno pitaj opet.

Nadam se da ce ti pomoci.


[Ovu poruku je menjao Nemanja Avramović dana 22.12.2006. u 12:35 GMT+1]
 
Odgovor na temu

Seslak
Sinisa Seslak
Doboj, Republika Srpska

Član broj: 19885
Poruke: 223

Sajt: www.seslak.tk


Profil

icon Re: Kako zastiti stranicu?20.12.2006. u 20:09 - pre 210 meseci
Mada, mozda mozes da probas i ovo. Ako npr. imas MySQL tabelu u kojoj su ti u dve kolone username i passwordi mozda ne bi bilo lose da dodas jos jednu kolonu za autentifikaciju (nazovimo je AUT). To bi radilo na fazonu da kada neko ukuca username i password, ukoliko su tacni upisivao bi se neki random string u kolonu AUT. Takodje bi postavio i varijable za sledecu stranicu (npr. index.php). Jedan varijable bi bila user i ona bi nosila korisnicko ime a druga AUT i ona bi nosila taj random string.. Sad, sledeca stranica proverava da li username dostavljen postoji u tabeli. Ako da, proverava da li je u koloni AUT isti string kao i u varijabli AUT koja je upravo nasledjena sa prethodne stranice. Ukoliko jeste, moze dalje... Prilicno jednostavno i ne zonglira se sa passwordom. Mrsko mi je bilo kucati kod. :(
Parental Advisory
 
Odgovor na temu

djovan01

Član broj: 75700
Poruke: 196
*.dsl.sfldmi.ameritech.net.



Profil

icon Re: Kako zastiti stranicu?20.12.2006. u 20:15 - pre 210 meseci
hvala vam puno , resila sam problem. kreirala sam checkLogin.php koji je uz pomoc proveravao user name i pass i posle redirektovao na datu stranicu a ukoliko bi neko pokusao direktno da pristupi stranici ubacila sam da prvo prodje kroz checkLoging.php pa da onda ide dalje.
 
Odgovor na temu

Tyler Durden
Tyler Durden
Beograd

Član broj: 4312
Poruke: 3379
*.dynamic.sbb.co.yu.



+1365 Profil

icon Re: Kako zastiti stranicu?20.12.2006. u 20:43 - pre 210 meseci
Mislim da bi ti najbolje bilo da uradis kako ti je Dragan BL napisao.
Na ovom linku imas detaljnije uputstvo.
http://www.devarticles.com/c/a...-for-Beginners-by-a-Beginners/
Beneath civilization's fragile crust, cold chaos churns...
 
Odgovor na temu

monte_sandman
Mark Andrej
heaven

Član broj: 61080
Poruke: 60
*.crnagora.net.



Profil

icon Re: Kako zastiti stranicu?20.12.2006. u 21:18 - pre 210 meseci
POstoje programi koji mogu da "povuku" php kod sa tvog servera i procitaju pass i user zato obavezno koristi neku bazu u kojoj ces cuvati pass i user.
Nesto tipa ovoga u php-u:

Code:
<?
session_start();
$_SESSION['lozinka']=$_POST['korisnik'];
$_SESSION['sifra']=$_POST['password'];
$_SESSION['autorizacija']=0;

$link=mysql_connect("localhost", "root", "admin") or die (mysql_error());
mysql_select_db("baza") or die (mysql_error());

$upitkorisnik="SELECT korisnik_nalog,korisnik_sifra FROM korisnik WHERE 
    korisnik_nalog='".$_SESSION['lozinka']."' AND korisnik_sifra='".$_SESSION['sifra']."'"; 

$rezultat=mysql_query($upitkorisnik) or die (mysql_error());

if (mysql_num_rows($rezultat)==1)
{
$_SESSION['autorizacija']=1;

ELSE 
{
echo "Nemate pravo da otvorite ovu stranicu"; 
exit();
}
?>

I svaka stranica poslije treba da ima nesto tipa ovoga na pocetku:

Code:
<?php
session_start();
if ($_SESSION['autorizacija'] != 1) {
echo "Nemate pravo da pristupate ovoj stranici";
exit();
}
?>


[Ovu poruku je menjao Nemanja Avramović dana 22.12.2006. u 12:36 GMT+1]
 
Odgovor na temu

Jbyn4e

Član broj: 422
Poruke: 6049
*.ptt.yu.



+257 Profil

icon Re: Kako zastiti stranicu?21.12.2006. u 09:07 - pre 210 meseci
Citat:
monte_sandman: POstoje programi koji mogu da "povuku" php kod sa tvog servera i procitaju pass i user zato obavezno koristi neku bazu u kojoj ces cuvati pass i user.

Ne lupaj, koji su ti to pa programi?
Da je tako, niko ne bi pisao php kod koji moze da se "vidi" kakav je.

Mozda tako nesto i postoji, ali ja za to jos nisam cuo. Prosvetli nas koji je to program?
Kad sve ostalo zakaže, pročitaj uputstvo...
 
Odgovor na temu

Nemanja Avramović
Engineering Manager
MENU Technologies
Beograd, Srbija

Moderator
Član broj: 32202
Poruke: 4391
194.106.174.*

Sajt: https://avramovic.info


+46 Profil

icon Re: Kako zastiti stranicu?22.12.2006. u 11:37 - pre 210 meseci
Slažem se sa Jbyn4e-om
Laravel Srbija.

[NE PRUŽAM PODRŠKU ZA PHP PREKO PRIVATNIH PORUKA!]
 
Odgovor na temu

glavince
Ohrid/Macedonia

Član broj: 66412
Poruke: 246
62.162.91.*

Sajt: ohridnews.com


Profil

icon Re: Kako zastiti stranicu?22.12.2006. u 12:13 - pre 210 meseci
Ako striktno takve podatke cuvas u fajl sa extenzijom PHP, a ne INC ili nesto slicno. Kod moze da se vidi jedino kad rikne PHP mod na serveru. A mislim da se takve stvari vrlo retko u nekim promilima desavaju.
 
Odgovor na temu

defufna
Novi Sad

Član broj: 35112
Poruke: 167
*.dynamic.sbb.co.yu.

Jabber: defufna@jabber.papla.pl


Profil

icon Re: Kako zastiti stranicu?22.12.2006. u 15:49 - pre 210 meseci
osim ako je u pitanju shared hosting, tada komsija moze da ti zaviri u file-ove ili neko ko je razvalio komsijin skript i dobio mogucnost izvrsavanja skriptova :)
Sobe, apartmani u Crnoj Gori
http://www.123montenegro.com
 
Odgovor na temu

centaur
Beograd

Član broj: 65691
Poruke: 407
80.93.253.*

ICQ: 249678363
Sajt: www.pavko.net


+24 Profil

icon Re: Kako zastiti stranicu?22.12.2006. u 20:20 - pre 210 meseci
Elegantnije rešenje umesto pisanja istog koda na svakoj stranici je da sve to radi klasa.
U tom slučaju,u svakom skriptu se na početku napravi jedna instanca klase koja sama odradi sve poslove.
Kasnije se takva klasa uz eventualne minimalne modifikacije koristi i u drugim projektima.

Što se tiče listanja PHP koda,mislim da je preko HTTP protokola to nemoguće (osim ako server ne prsne).

@monte_sandman
U tvom kodu si promenjivama sesije direktno dodelio vrednosti koje korisnik unosi,i bez ikakve provere ih
prosledio MySQL serveru.
Bombona za Mysql Injection!!!


[Ovu poruku je menjao centaur dana 22.12.2006. u 23:28 GMT+1]
Powered by Slackware 13
 
Odgovor na temu

[es] :: PHP :: Kako zastiti stranicu?

[ Pregleda: 3797 | Odgovora: 10 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.