![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 2.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam taki problem. Próbuje zrobić coś takiego, że użytkownik, który wchodzi na moją stronę w zależności od tego jakie hasło wpisze wchodzi na odpowiednią stronę. Próbowałem za pomocą skryptów logowania zrobić, ale pojęcie o PHP mam słabe i dochodzę do momentu takiego, że moge za pomocą "form action" zrobić tylko jedno hasło czyli można wejśc na tylko jedną stronę. Mam nadzieję, że dobrze wszystko objasniłem ? Pozdrawiam |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 358 Pomógł: 78 Dołączył: 4.11.2008 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
No ale z czym masz problem? Po prostu sprawdzasz jakie hasło użytkownik podał, potem przekierowujesz (albo zapisujesz w sesji) odpowiednie hasło i sprawdzasz za pomocą if.
-------------------- Google knows the answer...
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 2.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
dzięki , zaraz przetestuje
A jednak wychodzi moja nie wiedza. Mam w tej chwili skrypt który wygląda następująco ... Mam sobie pliczek logowanie.php w którym użytkownik wpisuje login i hasło i który przekierowuje na inny plik Kod <html> <head> <title> Logowanie </title> <style type="text/css"> .style1 { text-align: center; font-family: Verdana, Geneva, Tahoma, sans-serif; font-size: large; color: #00FF00; } </style> </head> <body bgcolor= #E5E5E5> <img src="images/Header.jpg" height="139" width="500"> <p class="style1">Logowanie</p> <center> <form action='pln.php' method='POST'> <table border='5'> <tr> <td> Login : </td> <td> <input type='text' name='login' value="uczestnik"> </td> </tr> <tr> <td> Hasło : </td> <td> <input type='password' name='pass' > </td> </tr> <tr> <td> </td> <td> <center> <input type='submit' value='Loguj' > </center> </td> </tr> </table> </form> <form action='Dok+Firmowe.php' method='POST'> </form> p.s.<br/> Dla każdego skryptu pole "Login" jest takie samo i brzmi: "uczestnik" </center> </body> </html> I chciałbym aby w zależności od wpisanego hasła przekierowywał na inna stronę. przykładowy plik po wpisaniu hasła: Kod <?php //Logowanie by jan64 (c) 2008 //nie usuwaj copyright //licencja freeware //nie odpowiadam za działanie tego skryptu //oraz za jego wykorzystanie //urzywasz go na własną odpowiedzialność //haslo $passf = "maszyna"; //login $loginf = "uczestnik"; //nie modyfikuj tego co poniżej $godz = date("Y-m-d"); $host = gethostbyaddr($_SERVER['REMOTE_ADDR']); $ip = $_SERVER['REMOTE_ADDR']; $login = $_POST[login]; $pass = $_POST[pass]; if ($login == $loginf) { if ($pass == $passf) { $namee = "||Dostęp do danych uzyskał $ip $host w dniu $godz||"; $gmernglir = fopen ("rejestr.txt", "a+"); fwrite ($gmernglir, $namee); echo "<center>"; echo "Twój IP: $ip"; echo "<br>"; echo "Twój HOST: $host"; echo "<br>"; echo "Dziś jest : $godz"; echo "<br>"; echo "<br>"; echo "<hr>"; } else { $namee = "||Próba dostępu do danych zle haslo dostęp do danych próbował uzyskać $ip $host w dniu $godz||"; $gmernglir = fopen ("rejestr.txt", "a+"); fwrite ($gmernglir, $namee); echo "<center>"; echo"Zle haslo"; echo "<br>"; echo "<br>"; echo "<hr>"; exit; } } else { $namee = "||Próba dostępu do danych zly login dostęp do danych próbował uzyskać $ip $host w dniu $godz||"; $gmernglir = fopen ("rejestr.txt", "a+"); fwrite ($gmernglir, $namee); echo "<center>"; echo "Zly Login"; echo "<br>"; echo "<br>"; echo "<hr>"; exit; } ?> <?php ob_start(); $start=microtime(); // kod do liczenia czasu ładowania strony ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US" xml:lang="en"> <head> <meta name="google-site-verification" content="SjeA7I3D3FLedx8MwB2oC-tMTH7EmmJsGxNUe71RLBY" /> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" /> <title>Ekspert</title> <script type="text/javascript" src="script.js"></script> <style type="text/css"> .style1 { text-align: center; } </style> </head> <body bgcolor= #E5E5E5> <div class="style1"> <img src="images/Header.jpg" height="139" width="500" /> <p class="style5">Dziękujemy za skorzystanie ze szkolenia naszej firmy. Poniżej do ściągnięcia zamieszczamy materiały dla Państwa.</p> <div class="style6"> <span class="style7">1.<a href="PLN.pdf">Skrypt PLN</a></span> </div><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/><br/> <?php ob_start(); include("licznik.php"); ?> </div> </body> </html> I jak to najlepiej scalić ? ________________________________________________________________________________ ____________________________________________________ Doszedłem do takiego momentu Mam problem tego typu, że po zalogowaniu na daną stronę mam biały ekran zamiast strony docelowej ... plik logowanie.php: Kod <? if (isset($_POST['haslo'])) { $haslo = $_POST['haslo']; if ($haslo == 'materialy_pln') { @header ('Location: pln.php'); } else { echo 'Nie udalo sie zalogowac.'; } if ($haslo == 'materialy_waluty') { @header ('Location: waluty.php'); } else { echo 'Nie udalo sie zalogowac.'; } if ($haslo == 'materialy_dokumenty') { @header ('Location: Dok+Firmowe.php'); } else { echo 'Nie udalo sie zalogowac.'; } } ?> i przykladowo pln.php Kod <form action="logowanie.php" method="post">
<div class="style1"> <font size="5"> Podaj hasło:</font><br> <input name='pass' type="password"> <input type="submit" VALUE="OK"> </div> </form> i ponieżej treść strony ... Ten post edytował przemo. 12.05.2010, 10:42:42 |
|
|
![]()
Post
#5
|
|
![]() Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków ![]() |
proszę o prawidłowe bbcode.
-------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 231 Pomógł: 1 Dołączył: 22.04.2007 Skąd: Rypin Ostrzeżenie: (0%) ![]() ![]() |
nie analizowałem tego w całości ale być może:
Cytat <input name='pass' type="password"> a potem deklarujesz haslo : $haslo = $_POST['haslo']; jak masz ten kod: Cytat if (isset($_POST['haslo'])) { ... } dopisz sobie warunek else Cytat if (isset($_POST['haslo'])) { ... } else { echo "brak zmiennej haslo"; } i będziesz wiedział czy to na pewno to Ten post edytował djbarca 12.05.2010, 11:16:45 |
|
|
![]()
Post
#7
|
|
![]() Grupa: Nieautoryzowani Postów: 2 249 Pomógł: 305 Dołączył: 2.10.2006 Ostrzeżenie: (0%) ![]() ![]() |
Po prostu w momencie sprawdzania hasła dodać switch, nic trudnego.
-------------------- Google knows the answer...
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 231 Pomógł: 1 Dołączył: 22.04.2007 Skąd: Rypin Ostrzeżenie: (0%) ![]() ![]() |
dlaczego w pliku logowanie.php masz 2x form dalej.. jeśli opcja login zawsze jest taka sama i nigdzie nie sprawdzasz jej poprawności to wyrzuć ją najprościej jak chcesz zrobić przekierowanie w zależności od wpisanego hasła to: logowanie.php
i plik np: zarzadzaj.php
w palca pisane wiec moglem sie gdzies pomylic |
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 2.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
dzięki , próbuje wszystkiego ...
Djbarca - wyskakuje mi : Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/przemo1/domains/ekspert-szkolenia.eu/public_html/zarzadzaj.php on line 13 ta linia to: if (!empty($haslo) && in_array(array_keys($array),$haslo)) |
|
|
![]()
Post
#10
|
|
![]() Grupa: Moderatorzy Postów: 4 362 Pomógł: 714 Dołączył: 12.02.2009 Skąd: Jak się położę tak leżę :D ![]() |
Lepiej sprawdź jaka jest kolejność parametrów dla in_array. Czy in_array( $tablica, $szukany ) czy może in_array( $szukany, $tablica )
![]() -------------------- Najpierw był manual... Jeśli tam nie zawarto słów mądrości to zapytaj wszechwiedzącego Google zadając mu własciwe pytania. A jeśli i on milczy to Twój problem nie istnieje :D
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 231 Pomógł: 1 Dołączył: 22.04.2007 Skąd: Rypin Ostrzeżenie: (0%) ![]() ![]() |
fakt .. moj blad..
Ten post edytował djbarca 12.05.2010, 11:38:30 |
|
|
![]()
Post
#12
|
|
![]() Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
Było milion razy na forum. Poszukaj.
|
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 2.02.2006 Ostrzeżenie: (0%) ![]() ![]() |
to ja spróbuje jeszcze od innej strony. Teraz mam taki błąd:
Kod Warning: Cannot modify header information - headers already sent by (output started at /home/przemo1/domains/ekspert-szkolenia.eu/public_html/zarzadzaj.php:11) in /home/przemo1/domains/ekspert-szkolenia.eu/public_html/zarzadzaj.php on line 17 i problem polega na tym, że dodałem ob_start(); oraz ob_end_flush(); . Zmieniłem też kodowanie z UTF-8 na Latin2 i dalej mam to samo ... EDIT: dzieki za wszystko , poradziłem sobie ![]() Ten post edytował przemo. 12.05.2010, 12:50:26 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.07.2025 - 14:01 |