Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Usunięcie okno wpisywania, Domyślam się że trzeba uży sesji
Zeelof
post 17.11.2008, 21:17:08
Post #1





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 7.02.2008

Ostrzeżenie: (0%)
-----


Jak wielu z tych co czyta czasem moje posty już wie dopiero ucze się języka PHP więc proszę o wyrozumienie i pomoc...

Mam coś takiego:
Kod
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8">
    <meta http-equiv="content-language" content="pl">
  </head>
</html>

<form method = "post" action = "">
  <center>
  podaj hasło dostępowe do witryny:<br>
  <input type = "password" name = "haslo">
  <input type = "submit" name = "wejdź">
  </center>
</form>

<?php
  
  $haslo = 'a';
  
  if ($_post['haslo'] == $haslo)
  {
    echo 'Wpisałeś poprawne hasło. Jednak gry tutaj nie znajdziesz :P ';
  }
  else
  {
    echo '<center>skontaktuj się ze mną aby poznać hasło.<br>zresztą po co ci to? po wpisaniu hasła znajdziesz tylko gre flash o nazwie maganic wars;) <br>ta witryna to po prostu strona którą używam do ćwiczeń języka php;p</center>';
  }
  
?>


I teraz moje pytanie... Co musiał bym zrobić aby po poprawnym zalogowaniu się nie pokazywało pola wpisywania hasła?
Domyślam się że należało by użyć sesji (może sie myle) jednak nie wiem co i jak z tym dalej robić... Proszę o jakieś rady...

Ten post edytował Zeelof 17.11.2008, 21:17:44
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
nevt
post 17.11.2008, 21:37:36
Post #2





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


  1. <html xmlns="http://www.w3.org/1999/xhtml">
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  4. <meta http-equiv="content-language" content="pl">
  5. </head>
  6. </html>
  7.  
  8. <?php if(!isset($_POST['haslo'])
  9. echo '
  10. <form method = "post" action = "">
  11. podaj hasło dostępowe do witryny:<br>
  12. <input type = "password" name = "haslo">
  13. <input type = "submit" name = "wejdź">
  14. </center>
  15. </form>
  16. ';
  17. $haslo = 'a';
  18.  
  19. if ($_post['haslo'] == $haslo)
  20. {
  21. echo 'Wpisałeś poprawne hasło. Jednak gry tutaj nie znajdziesz tongue.gif ';
  22. }
  23. else
  24. {
  25. echo '<center>skontaktuj się ze mną aby poznać hasło.<br>zresztą po co ci to? po wpisaniu hasła znajdziesz tylko gre flash o nazwie maganic wars;) <br>ta witryna to po prostu strona którą używam do ćwiczeń języka php;p</center>';
  26. }


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
Zeelof
post 17.11.2008, 21:46:41
Post #3





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 7.02.2008

Ostrzeżenie: (0%)
-----


Nie do końca rozumiem :/

Dałem to do siebie (oczywiście zakończyłem ?>) jednak wykrywa mi błąd przy echo ' mam pytanie. czy za tym: <?php if(!isset($_POST['haslo']) nie trzeba nic wstawiać np {} questionmark.gif
Go to the top of the page
+Quote Post
ultra_18
post 18.11.2008, 15:35:51
Post #4





Grupa: Zarejestrowani
Postów: 71
Pomógł: 4
Dołączył: 30.10.2008

Ostrzeżenie: (0%)
-----


  1. <?php
  2.  
  3. if ($_POST['WEJDŹ']) // nazwa pola submit
  4. {
  5.  
  6. // czynności po wpisaniu pól formularza czyli sprawdzanie hasla etc
  7.  
  8. }
  9. else
  10. {
  11.  
  12. // jeżeli użytkownik nie wypelnil formularza to wysietlenie forumlarza
  13.  
  14. }
  15.  
  16. ?>
Go to the top of the page
+Quote Post
megawebmaster
post 18.11.2008, 20:35:22
Post #5





Grupa: Zarejestrowani
Postów: 143
Pomógł: 17
Dołączył: 8.11.2008
Skąd: Libiąż

Ostrzeżenie: (0%)
-----


  1. <html xmlns="http://www.w3.org/1999/xhtml">
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  4. <meta http-equiv="content-language" content="pl">
  5. </head>
  6. </html>
  7.  
  8. <?php if(!isset($_POST['haslo']){
  9. echo '
  10. <form method = "post" action = "">
  11. podaj hasło dostępowe do witryny:<br>
  12. <input type = "password" name = "haslo">
  13. <input type = "submit" name = "wejdź">
  14. </center>
  15. </form>
  16. ';
  17. }
  18. else
  19. {
  20. $haslo = 'a';
  21.  
  22. if ($_post['haslo'] == $haslo)
  23. {
  24. echo 'Wpisałeś poprawne hasło. Jednak gry tutaj nie znajdziesz tongue.gif ';
  25. }
  26. else
  27. {
  28. echo '<center>skontaktuj się ze mną aby poznać hasło.<br>zresztą po co ci to? po wpisaniu hasła znajdziesz tylko gre flash o nazwie maganic wars;) <br>ta witryna to po prostu strona którą używam do ćwiczeń języka php;p</center>';
  29. }
  30. }
  31. ?>


Ja bym to zrobił w ten sposób - po co ma wykonywać się reszta skryptu, skoro i tak tylko wyświetlany jest formularz? Przy okazji - action też musi być wypełniony winksmiley.jpg Nie wiem czy ktoś o tym zapomniał czy co, ale tak przypominam winksmiley.jpg

P.S. Zacznij pisać jakieś proste strony mające coś na celu, bo tak się szybko zniechęcisz. A w ten sposób (czyli pisząc coś konkretnego) nauczysz się szybciej i więcej. Według mnie oczywiście winksmiley.jpg
Go to the top of the page
+Quote Post
nevt
post 18.11.2008, 20:59:21
Post #6





Grupa: Przyjaciele php.pl
Postów: 1 595
Pomógł: 282
Dołączył: 24.09.2007
Skąd: Reda, Pomorskie.

Ostrzeżenie: (0%)
-----


nie brakuje {} tylko jednego nawiasu po if (stąd błąd...)
ale jeżeli chcesz żeby pamiętało ci fakt zalogowania przy kolejnych odświeżeniach tego skryptu, to faktycznie trzeba jeszcze dodać sesję:

  1. <html xmlns="http://www.w3.org/1999/xhtml">
  2. <head>
  3. <meta http-equiv="content-type" content="text/html; charset=utf-8">
  4. <meta http-equiv="content-language" content="pl">
  5. </head>
  6. <?php $haslo1 = 'a';
  7. $po_logowaniu = isset($_POST['haslo']);
  8. if($po_logowaniu)
  9. {
  10. $haslo2 = $_POST['haslo']);
  11. $_SESSION['zalogowany'] = ($haslo1 == $haslo2);
  12. }
  13.  
  14. if(!isset($_SESSION['zalogowany']))
  15. $_SESSION['zalogowany'] = FALSE
  16.  
  17. $zalogowany = $_SESSION['zalogowany'];
  18.  
  19. if($zalogowany)
  20. {
  21. echo 'Wpisałeś poprawne hasło. Jednak gry tutaj nie znajdziesz tongue.gif ';
  22. }
  23. elseif($po_logowaniu)
  24. {
  25. echo '<center>skontaktuj się ze mną aby poznać hasło.<br>zresztą po co ci to? po wpisaniu hasła znajdziesz tylko gre flash o nazwie maganic wars;) <br>ta witryna to po prostu strona którą używam do ćwiczeń języka php;p</center>';
  26. }
  27. else
  28. {
  29. echo '<form method = "post" action = ""><center>podaj hasło dostępowe do witryny:<br><input type = "password" name = "haslo"><input type = "submit" name = "wejdź"></center></form>';
  30. }
  31. ?>
  32. </body>
  33. </html>

powodzenia


--------------------

-
Oh no, my young coder. You will find that it is you who are mistaken, about a great many things... -
Go to the top of the page
+Quote Post
Zeelof
post 18.11.2008, 21:06:52
Post #7





Grupa: Zarejestrowani
Postów: 83
Pomógł: 0
Dołączył: 7.02.2008

Ostrzeżenie: (0%)
-----


Dzięki wielkie wszystkim za pomoc a szczególnie ultra_18 ;]
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 02:22