Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> skrypt logowanie-wylogowanie, prosba o poprawe kodu i/lub naprowadzeni
robert_b
post
Post #1





Grupa: Zarejestrowani
Postów: 17
Pomógł: 0
Dołączył: 21.11.2003
Skąd: Gdynia

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


Zwracam sie z prosba do bardziej zaawansowanych userow o pomoc w celu poprawienia mojego skryptu.
Chodzi o to ze na stronie glownej(index.php) znajduje sie kod generujacy 2 formularze w zaleznosci od okolicznosci:
  1. <?php
  2. if(!(isset($_SESSION['zalogowany']))||($_SESSION['zalogowany']=='nie')){
  3. echo('<table id=\"menu\"><tr><td><form method=\"post\"  action=\"index.php?id=login\">');
  4. echo('Login:<input id=\"log\" type=\"text\" name=\"login\"/>');
  5. echo('Hasło:<input id=\"log\" type=\"password\" name=\"passwd\"/>');
  6. echo('<input type=\"hidden\" id=\"log\" name=\"akcja\" value=\"zaloguj\" />');
  7. echo('<input id=\"log\" type=\"submit\" value=\"zaloguj\" /></form>');
  8. echo('</td></tr></table>');
  9. }else{
  10. echo('<form method=\"post\" action=\"index.php?id=login\">');
  11. echo('<input type=\"hidden\" id=\"log\" name=\"akcja\" value=\"wyloguj\" />');
  12. echo('<input type=\"submit\" id=\"log\" value=\"wyloguj\" />');
  13.  
  14. }
  15. ?>

Logowanie przebiega prawidlowo, ale gdy pojawia sie fromularz z opcja "wyloguj"
to nie chce sie znowu pojawic pierwszy formularz (do zalogowania).

Oto moj skrypt logowania/ wylogowania:
  1. <?php
  2. $polo=mysql_connect(&#092;"xxxx\",\"xxxx\",\"xxxx\")or die(\"Blad przy polaczaniu sie z baza\");
  3. $baza=mysql_select_db(&#092;"xxxx\",$polo)or die(\"Nie mozna wybrac wskazanej bazy\");
  4. if(!($_POST['akcja']='wyloguj')){
  5. if(!isset($_POST['login'])){
  6. $login=strip_tags($_SESSION['login']);
  7. }else{
  8. $login=strip_tags($_POST['login']);
  9. session_register('login');
  10. }
  11. if(!isset($_POST['passwd'])){
  12. $haslo=strip_tags($_SESSION['haslo']);
  13. }else{
  14. $haslo=strip_tags($_POST['passwd']);
  15. session_register('haslo');
  16. }
  17. $q2=&#092;"select * from `uzytkownicy` where `login` like '$login' and `haslo` like PASSWORD('$haslo')\";
  18. $w2=mysql_query($q2);
  19. $wiersz=mysql_fetch_array($w2);
  20. ?>
  21. <p id=\"prawy\">Logowanie<br/><br/>
  22. <?php
  23. if($w2=1){
  24. echo(&#092;"witaj $login !<br/>\");
  25. echo('Jestes teraz zalogowany i uzyskales dostep do \"tajnego\" dzialu.;)');
  26. $zalogowany='tak';
  27. }else{
  28. echo('Nie udalo ci sie zalogowac! Sprawdz wielkosc liter i sprobuj ponownie!');
  29. $zalogowany='nie';
  30. }
  31. }
  32. else{
  33. $zalogowany='nie';
  34. }
  35. session_register('zalogowany');
  36. ?>
  37. </p>

Mam nadzieje ze jasno przedstawilem problem! (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
Jednoczesnie prosze o wskazanie LUK w bezpieczenstwie o ile takowe zostana zauwazone (choc raczej jestem pewien ze beda)

Z gory dzieki za pomoc!

p.s. Przepraszam za brak polskich znakow.
Go to the top of the page
+Quote Post
Nievinny
post
Post #2





Grupa: Zarejestrowani
Postów: 134
Pomógł: 0
Dołączył: 27.01.2005
Skąd: Białystok

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


Tak powinno być dobrze:

  1. <?php
  2. $polo=mysql_connect(&#092;"xxxx\",\"xxxx\",\"xxxx\")or die(\"Blad przy polaczaniu sie z baza\");
  3. $baza=mysql_select_db(&#092;"xxxx\",$polo)or die(\"Nie mozna wybrac wskazanej bazy\");
  4. if(!($_POST['akcja']='wyloguj')){
  5. if(!isset($_POST['login'])){
  6. $login=strip_tags($_SESSION['login']);
  7. }else{
  8. $login=strip_tags($_POST['login']);
  9. session_register('login');
  10. }
  11. if(!isset($_POST['passwd'])){
  12. $haslo=strip_tags($_SESSION['haslo']);
  13. }else{
  14. $haslo=strip_tags($_POST['passwd']);
  15. session_register('haslo');
  16. }
  17. $q2=&#092;"select * from `uzytkownicy` where `login` like '$login' and `haslo` like PASSWORD('$haslo')\";
  18. $w2=mysql_query($q2);
  19. $wiersz=mysql_fetch_array($w2);
  20. ?>
  21. <p id=\"prawy\">Logowanie<br/><br/>
  22. <?php
  23. if($w2=1){
  24. echo(&#092;"witaj $login !<br/>\");
  25. echo('Jestes teraz zalogowany i uzyskales dostep do \"tajnego\" dzialu.;)');
  26. $_SESSION['zalogowany'] ='tak';
  27. }else{
  28. echo('Nie udalo ci sie zalogowac! Sprawdz wielkosc liter i sprobuj ponownie!');
  29. $_SESSION['zalogowany'] ='nie';
  30. }
  31. }
  32. else{
  33. $_SESSION['zalogowany'] ='nie';
  34. }
  35. session_register('zalogowany');
  36. ?>


Ten post edytował Nievinny 2.04.2005, 14:48:29
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 23.08.2025 - 20:48