Pomoc - Szukaj - U¿ytkownicy - Kalendarz
Pe³na wersja: DO POPRAWY SKRYPT
Forum PHP.pl > Forum > PHP
olus
plik z poprawnymi haslami wyglada tak:

$haslo="twoje_has³o1";
$haslo="twoje_has³o2";
$haslo="twoje_has³o3";
$haslo="twoje_has³o4";
$haslo="twoje_has³o5";
itd..

Kod
<?php



if(isset($password)) //jesli haslo zostalo przekazane z formularza sprawdz je



{

include('hasla.txt'); //plik z poprawnymi haslami



if(password=$haslo)



Header("Location: [url=http://adres_strony_www.com]http://adres_strony_www.com");[/url] //adres strony ktora wyswietli

                                               //sie jesli haslo jest poprawne







else



{

Header("WWW-Authenticate: Basic realm="Obszar"");

Header("HTTP/1.0 401 Unauthorized");

echo "Brak uprawnieñ do przegl±dania strony"; //ten komunikat wyswietli sie

                                              //jesli haslo jest niepoprawne

}



}



else //jesli haslo nie zostalo przekazane z formularza wyswietl formularz do logowania



//formularz do logowania sie



print('<html>');

print('<head>');

print('<Title>LOGOWANIE</title>');

print('<META HTTP-EQUIV="Refresh" CONTENT="10">');

print('</head>');

print('<body>');



print('LOGOWANIE DNIA');

$data = date("D.m.Y H:i:s");

print('$data');

print('<br><br><br><br>');



print('<FORM ACTION="logowanie.php" METHOD="Post">');

print('<INPUT TYPE="password" NAME="$password" VALUE="wartosc">');

print('<br><br>');

print('<INPUT TYPE="submit" VALUE="ZALOGUJ MNIE!"> ');

print('</form>');



print('</body>');

print('</html>');



?>


no i jest taki problem czy to zadzia³a?

plik przekazuje podane przez usera haslo i sprawdza go z list± dostêpnych haslej jesli jest poprwne to user pprzechodzi do tej strony co ja chce jesli nie to dostêp jest zabdoniony

wiem ze mogly by byc to 2 pliki jeden z formularzem a drugi z skryptem sprawdzajacym ale ja chce aby bylo w jednym!
czy ktos uprzejmi moglby mi kulturalnie wytkn±c b³edy w tym skrypcie

BARDZO PROSZE!!! biggrin.gif
castor
strasznie nie czytelnie zes wrzucil ten skrypt na strone:(

Cytat
$haslo="twoje_has³o1";  
$haslo="twoje_has³o2";  
$haslo="twoje_has³o3";  
$haslo="twoje_has³o4";  
$haslo="twoje_has³o5";


jak masz taki uklad w pliku to $haslo ma wartosc ostatniego hasla wiec bez sensu:(

zrob taki uklad w pliku
Kod
<?

haslo1

haslo2

haslo3

haslo4

it....

?>


nazwij plik hasla.php zostaw te klamerki bo wtedy nikt z zewnatrz nie wyczyta ci hasel:)

Kod
<?php

if(isset($password)){

    $hasla=file('plik.php');

    $password=chop($password);

    $pass=false;

    for($i=0;$i<count($hasla);$i++){

      $hasla[$i]=chop($hasla[$i]);

      if($hasla[$i]==$password){

          $pass=true;

      }



    }

       if($pass){

            Header("Location: [url=http://adres_strony_www.com]http://adres_strony_www.com");[/url]

       }else{

            echo "nBrak uprawnien do przegladania strony";        

       }



}else{

    print('<html>');

    print('<head>');

    print('<Title>LOGOWANIE</title>');

    print('</head>');

    print('<body>');      

    print('LOGOWANIE DNIA: ');

    print(date("D.m.Y H:i:s"));

    print('<br><br><br><br>');      

    print('<FORM ACTION="index.php" METHOD="post">');

    print('<INPUT TYPE="password" NAME="password" VALUE="">');

    print('<br><br>');

    print('<INPUT TYPE="submit" name="submit" VALUE="ZALOGUJ MNIE!"> ');

    print('</form>');

    print('</body>');

    print('</html>');



}



?>


to tak na szybko powinno dzialac teraz porownaj se ten kod z tamtym i zobaczysz gdzie byly bledy oraz gdzie byl blad w mysleniu :wink:
olus
widze ¿e nikt prócz ciebie nie pali sie do poprawy mojego skryptu!!!

nikt wiêcej nie potrafi?questionmark.gif?

jest b³±d w lini 12 Parse error: parse error co¶ niechodzi!!!

czy mo¿esz sprawdziæ ten skrypt dal mnie?questionmark.gif?

http://www.kooperant.com/log.php
Mac
Cytat
widze ¿e nikt prócz ciebie nie pali sie do poprawy mojego skryptu!!!

nikt wiêcej nie potrafi?questionmark.gif?

jest b³±d w lini 12  Parse error: parse error  co¶ niechodzi!!!

czy mo¿esz sprawdziæ ten skrypt dal mnie?questionmark.gif?
http://www.kooperant.com/log.php

B³±d jest chyba tu (sprawdz powinno dzia³aæ) smile.gif
Kod
} else {

$pass=false;

}

smile.gif
olus
teraz e w 10 linii jest blad
Mac
Cytat
teraz e w 10 linii jest blad

Ju¿ poprawi³em mój post smile.gif nie by³o "}" smile.gif
olus
terazs pisze ze w 18 linni jest blad

i chyba jest wiêcej b³êdów
castor
Olus rusz sam glowka

Kod
Header("WWW-Authenticate: Basic realm="Obszar"");


jesli masz tylko parse errory to poszukaj sam bledow :wink:
olus
fajna ta twoja bramka sms-owa

ale skrypt odpalam nie ja tylko koles u siebie i mi mówi co mu nie gra!!!

cie¿ko grzebac w twoim skrypcie bo jeszce go troche nie rozumiê

wiem ¿e ci sie nei chce ale czy nie mo¿esz go sam odpalic?

i zobaczyæ jakie s± b³êdy - napisalem SKRYPT DO POPRAWY

bo ja zabardzo nie wiem co jeszcze tam moze nie garc!!! :cry: :cry: :cry: :cry: :cry: :cry: :cry:

czemu tylko ty odpisujesz?
a reszta? spiom?
Mac
Cytat
czemu tylko ty odpisujesz?
a reszta? spiom?
A ja co nie odpisuje :?: winksmiley.jpg
castor
zmienilem post i dalem ci poprawiony kod .

NIe bede tu go wklejal boo nie ma poco zasmiecac forum :wink:

co do bledow to pamietaj ze jesli piszesz cos w pojedynczych uszach do nie musisz juz wykomentowywac podwojnych.

i byl jeden blad moj sorry zawsze bylo false;

Ahaha i jeszcze jedno usun spacje w pliku po haslach jesli je masz :wink:
Anarion
Cytat
nazwij plik hasla.php zostaw te klamerki bo wtedy nikt z zewnatrz nie wyczyta ci hasel:)

Jakby bardzo chcial to by wyczytal...
Powiedzmy masz strone login.php a w niej
<? include("user_cofirm.php"); ?>
a w tym user_confirm.php
<? include("hasla.txt"); ?>
Wiec po sznurku sciagasz najpierw login.php potem z niego wyczytujesz ze "nalezy" dalej sciagnac user_confirm.php a tam widzisz skad sciagnac hasla.txt ...
Mialem tez haslo w pliku, ale kiedy wpadlem na to jak mozna sie ich dowiedziec to zmienilem to na mysqla...
Chyba ze mozna zalozyc blokade na jakis tam folder ( nie wiem.. a mozna?)
castor
Cytat
Jakby bardzo chcial to by wyczytal...
Powiedzmy masz strone login.php a w niej  
<? include("user_cofirm.php"); ?>
a w tym user_confirm.php
<? include("hasla.txt"); ?>

i myslisz ze zadziala?? zreszta ja mowilem o hasla.php i chodzilo mi o wywolanie ich w przegladarce :wink:
Cytat
Wiec po sznurku sciagasz najpierw login.php potem z niego wyczytujesz ze "nalezy" dalej sciagnac user_confirm.php a tam widzisz skad sciagnac hasla.txt ...
Mialem tez haslo w pliku, ale kiedy wpadlem na to jak mozna sie ich dowiedziec to zmienilem to na mysqla...
Chyba ze mozna zalozyc blokade na jakis tam folder ( nie wiem.. a mozna?)


blokady mozna zakladac na foldery i nawet trzeba jak sie ma w nich hasla



Jak taki kozak to wlam sie mi tu:

www.elektromechanika.com/admin.php

dla dodania wszytsko jest na plikach :wink: :wink:
Markiz
Cytat
Chyba ze mozna zalozyc blokade na jakis tam folder ( nie wiem.. a mozna?)


Jak zrobisz blokadê na folder to nie dostaniesz siê do pliku... innego sposobu nie widzê...
Chyba, ¿e zrobisz sobie CHMOD na pliku ¿eby osoba z zewn nie mog³a podejrzeæ, a ty sam chc±c siê zalogowaæ (przy u¿ywaniu skryptu) wejdziesz przez FTPa (zrobionego w php, ¿eby mo¿na by³o pobraæ dane) i wtedy dzia³aæ dalej...
Pytanie tylko --> Czy nie szkoda czasu ?smile.gif
GeoS
A nie latwiej wykorzystac do tego celu plik .htaccess i plik z loginami:haslami :?:

Nawet jesli masz jakiegos Winshita, to nie ma pod nim problemu z generowaniem zaszyfrowanych haselek dla systemow UNIXowych. Jesli potrzeba, to podesle Ci ten program na priva.

Po co sie tak meczyc :?: Przeciez mozna to zrobic szybko, latwo i przyjemnie smile.gif
dreda
:|

Ca³y skrypt :: poprawiony... my¶lê, ¿e jest ok. biggrin.gif

:: plik logowanie.php

<?php

if(!isset($password) || empty($password)) { // je¿eli has³o nie wpisane lub puste
echo "<B>Musisz podaæ has³o!</B><BR>n";
}
else {
include("hasla.php"); // plik z has³ami
for($i=0;$i < sizeof($haslo);$i++) { // sprawdzenie has│a
if($password==$haslo[$i]) {
Header("Location: www.jakas.strona.com"); // po podaniu prawid³owego has│a skok do strony
break;
}
}
}
echo "<HTML>";
echo "<HEAD>";
echo "<TITLE>Logowanie</TITLE>";
echo "</HEAD>";

echo "<BODY>";

// formularz do podania has³a

echo "n<BR><FORM ACTION="logowanie.php" METHOD="get"><BR>n";
echo "<INPUT TYPE="password" NAME="password"><BR>n";
echo "<INPUT TYPE="submit" VALUE="Zaloguj mnie"><BR>n</FORM><BR>n";

echo "</BODY></HTML>";

?>



Dalej :: co do zabezpieczeñ pliku :

Na samym pocz±tku wstawiasz Header("Location ...."); wiesz o co chodzi... biggrin.gif

:: plik hasla.php

<?php
Header("Location: logowanie.php"); // zabezpieczenie pliku
$haslo[0] = 'twoje_haslo1';
$haslo[1] = 'twoje_haslo2';
$haslo[2] = 'twoje_haslo3';
$haslo[3] = 'twoje_haslo4';

?>
Markiz
to mia³a byæ odpowiedz do posta jeszcze wczesniejszego winksmiley.jpg

ale w³a¶nie chodzi³o o to, ¿eby zabezpieczyæ dane które bêd± w pliku, ¿eby kto¶ z zewn±trz nie móg³ otworzyæ, a ¿eby¶ ty móg³ otworzyæ przy sprawdzaniu loginu winksmiley.jpg
A jak zrobisz plik na passa to jak sie zalogujesz ?
GeoS
Cytat
ale w³a¶nie chodzi³o o to, ¿eby zabezpieczyæ dane które bêd± w pliku, ¿eby kto¶ z zewn±trz nie móg³ otworzyæ, a ¿eby¶ ty móg³ otworzyæ przy sprawdzaniu loginu winksmiley.jpg
A jak zrobisz plik na passa to jak sie zalogujesz ?


Przy sprawdzaniu loginu otworzyc plik :?: Chyba po sprawdzeniu loginu zyskujesz dostep do pliku :!:

Wlasnie caly podany przeze mnie wczesniej mechanizm autoryzacji przez APACHE zalatwia problem logowania sie. W pliku z haslami masz loginy i passwordy dla userow smile.gif
Mistycus
8O Ale macie problem. Wystarczy:
:arrow: plikowi z has³ami nadaæ atrybut do wykonywania (skrypt) dla wszystkich, a sami bêdziemy mogli odczytaæ zawarto¶æ wchodz±c na FTPa, gdy¿ sobie ustawimy atrybut do odczytu i zapisu
albo
:arrow: skorzystaæ ze skryptu administracyjnego, w którym mo¿naby zczytywaæ plik do tablicy, a potem wypisaæ ka¿dy jej element przy pomocy pêtli i funkcji count() lub wykorzystaæ funkcjê print_r() tongue.gif
Anarion
Cytat
blokady mozna zakladac na foldery i nawet trzeba jak sie ma w nich hasla  

Skoro tak to spoko majonez, narazie siedze na windowskim apacheu i interesuje mnie tylko to czy dzialaja skrypty i mysql smile.gif
Mam linuxa ale jakos ie moge sie zaaklimatyzowac tongue.gif
Cytat
Jak taki kozak to wlam sie mi tu:
www.elektromechanika.com/admin.php
dla dodania wszytsko jest na plikach :wink:  :wink:

Eeeeee....
olus
noi dziêki....
Mac
Cytat
:|  
...
Dalej :: co do zabezpieczeñ pliku :

Na samym pocz±tku wstawiasz Header("Location ...."); wiesz o co chodzi... biggrin.gif  

:: plik hasla.php

<?php
Header("Location: logowanie.php"); // zabezpieczenie pliku
$haslo[0] = 'twoje_haslo1';
$haslo[1] = 'twoje_haslo2';
$haslo[2] = 'twoje_haslo3';
$haslo[3] = 'twoje_haslo4';

?>

Takie zabezpieczenie nic nie da, bo kto¶ mo¿e ¶ci±gn±æ plik hasla.php przez jaki¶ download-er smile.gif
olus
no i co z tego serwer i tak jest na windozie to nie ma tego plik i tak jak zabezpieczyæ

a mo¿e kto¶ ma pomys³ jak zabezpieczyæ taki plik na windozowym serwerze?
GeoS
Cytat
Takie zabezpieczenie nic nie da, bo kto¶ mo¿e ¶ci±gn±æ plik hasla.php przez jaki¶ download-er  :)


Ale to co sciagnie (przez serwer WWW) bedzie juz "przememlane" (przetworzone przez silnik php), o ile wszystko jest normalnie skonfigurowane biggrin.gif
kryr
Trzeba tez pamietac o tym, ze taka autoryzacja nie dziala na ISS ... :?
Mistycus
Cytat
Trzeba tez pamietac o tym, ze taka autoryzacja nie dziala na ISS ... :?
Jak nie dszia³a, jak dzia³a laugh.gif
olus
wszystko ju¿ dzia³a jak TRZEBA!!! smile.gif biggrin.gif
kryr
Cytat
Jak nie dszia³a, jak dzia³a

:?: pfff ... moze, dawno nie mialem do czynienia z iss, ale podobno sa jakies problemy, chyba zreszta w manualu od php cos o tym wspominaja
(nie pamietam dokladnie o co chodzilo :oops: )
kryr
Zawsze jeszcze mozna trzymac hasla w osobnym pliku:
login | hasla | prawa dostepu
Ma to duza zalete: jezeli piszesz konsole administracyjna, moze zniej kozystac wiele osob, o roznych prawach...
(hasla trzeba oczywisice kodowac - np funkcja crypt() )
Mistycus
Cytat
dawno nie mialem do czynienia z iss, ale podobno sa jakies problemy
Zale¿y o jakiej Ty autoryzacji mówisz, bo ja o formularzu: login+hase³ko+buttonik.

Mo¿e chodzi³o Ci o okienko wyskakuj±ce przy wchodzeniu na stronê :? :?:
kryr
haselko+buttonik to zawsze dziala smile.gif
Chodzilo mi o ta autoryzacje z header() - cos z nia podobno jest nie tak na ISS ...
To jest wersja lo-fi g³ównej zawarto¶ci. Aby zobaczyæ pe³n± wersjê z wiêksz± zawarto¶ci±, obrazkami i formatowaniem proszê kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.