Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Podstrona na hasło
Forum PHP.pl > Forum > Gotowe rozwiązania > Szukam
KrzysiekKCN
Witajcie. Mam taki problem, otóż chciał bym żeby na stronie np. www.x.pl/index.php?load=login czyli w pliku login.php
był formularz w który można wpisać hasło które zawarte było by w pliku pass.php, plik login.php sprawdzał by poprawność hasła i jeżeli było by poprawne wyświetlał by podstronę np. klasa.php ale nie z adresem www.x.pl/index.php?load=klasa tylko jakoś zakodowane. jakiś ciąg znaków. No chyba że jest możliwość pytania o hasło użytkownika co próbę zalogowania się na stronę. Tylko wtedy skrypt by musiał pamiętać adres ip, i dawać możliwość wylogowania się. Gdy to samo ip po wylogowaniu probowało by wejść znowu by prosił o hasło. Da się to jakoś prosto zrobić?


Ja wymodziłem takie coś ale nie przenosi tak jak bym chciał. W pogrubieniu jest błąd którego nie umiem naprawić.
  1. <form action="pl/loguj.php" method="post">
  2. <input type="password" name="haslo"> -
  3. <input type="submit" value="Zaloguj Się"> </form>


  1. <? $haslo = $_POST['haslo']; $prawdziwe = "test";
  2. if ($haslo==$prawdziwe) {
  3. echo("Podałeś prawidłowe hasło! Możesz przejść dalej")
  4. echo include("podstrona.php");
  5. } else {
  6. echo("Podane przez ciebie hasło jest błedne!");
  7. } ?>



Z góry dzięki. Krzysiek
Gelio
Spróbuj taki kod:
  1. <?php $prawdziwe = "test";
  2. if ($_POST['haslo']==$prawdziwe) {
  3. echo("Podałeś prawidłowe hasło! Możesz przejść dalej");
  4. echo include("podstrona.php");
  5. } else {
  6. echo("Podane przez ciebie hasło jest błedne!");
  7. }; ?>

Powinno pomóc. Błąd składniowy.

Pozdrawiam,
Gelio
KrzysiekKCN
Wielkie dzięki. Wszystko działa ale ma to jeden błąd.

Jak już wejdzie na ten plik loguj.php sprawdzi hasło i wczytuje podstrone.php
to jest to tak:
Podałeś prawidłowe hasło!
zakodowane1




gdzie zakodowane to treść pliku podstrona.php a 1 się władowała nie wiadomo skąd.

Wiesz może jak to zrobić?
Kwpolska
Spróbuj tej metody:
  1. <?php
  2. $p = "test";
  3. if($_SERVER_REQUEST_METHOD=="POST")
  4. {
  5. if ($_POST['haslo'] == $p)
  6. {
  7. header('Location: podstrona.php');
  8. }
  9. else
  10. {
  11. echo 'zle haslo';
  12. }
  13. else
  14. {
  15. echo '<form action="?" method="post"><input type="password" name="haslo"><input type="submit" value="OK"></form>';
  16. }
  17. ?>

Lub, jeśli strona zakodowana ma być mała,
  1. <?php
  2. $p = "test";
  3. if($_SERVER_REQUEST_METHOD=="POST")
  4. {
  5. if ($_POST['haslo'] == $p)
  6. {
  7. // ZAWARTOSC STRONY
  8. // POZWOLIŁEM SOBIE ZAMKNĄĆ PHP.
  9. ?>
  10. <?php
  11. // JEŚLI TREŚĆ JEST W PHP, SKASUJ DWIE POWYŻSZE LINIE. /Kwpolska
  12. }
  13. else
  14. {
  15. echo 'zle haslo';
  16. }
  17. else
  18. {
  19. echo '<form action="?" method="post"><input type="password" name="haslo"><input type="submit" value="OK"></form>';
  20. }
  21. ?>
MateuszS
Kwpolska, a co jezeli ktos sobie w adres od razu wpisze podstrona.php? Zabezpiecz logowanie sesją.
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-2024 Invision Power Services, Inc.