Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [php] logowanie
gigzorr
post
Post #1





Grupa: Zarejestrowani
Postów: 652
Pomógł: 47
Dołączył: 6.02.2010
Skąd: Radom

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


Witam.
Po wielu nieudanych probach , napisania skryptu logowania poddalem sie.
  1. <?php session_start();?>
  2. <?php
  3. // laczenie z baza danych i wybor bazy danych
  4.  
  5. $db = mysql_connect("localhost","root","vertrigo") or die ("polaczenie nie moze byc zrealizowane");
  6. $wyborbazy = mysql_select_db("strona") or die ("nie ma takiej bazy danych");
  7.  
  8. $username = $_POST['username'];
  9. $password = md5($_POST['password']);
  10. $password = addslashes($password);
  11. $username = htmlspecialchars($username);
  12.  
  13. if ($_GET['username'] != '') { //jezeli ktos przez adres probuje kombinowac
  14. }
  15. if ($_GET['password'] != '') { //jezeli ktos przez adres probuje kombinowac
  16. }
  17.  
  18. $password = md5($password); //szyfrowanie hasla
  19. if (!$username OR empty($username))
  20. {
  21. echo 'Wypełnij pole z loginem!';
  22. }
  23. if (!$password OR empty($password))
  24. {
  25. echo 'Wypełnij pole z hasłem!';
  26. }
  27.  
  28. $istnick_zapytanie = mysql_query("SELECT * FROM `rejestracja` WHERE `uzytkownik` = '$username' AND `haslo` = '$password'"); // sprawdzenie czy istnieje uzytkownik o takim nicku i hasle
  29. print_r($istnick_zapytanie);
  30. if ($istnick_zapytanie[0] == 0)
  31. {
  32. echo 'Logowanie nieudane. Sprawdź pisownię nicku oraz hasła.';
  33. }
  34. else
  35. {
  36.  
  37. $_SESSION['username'] = $username;
  38. $_SESSION['password'] = $password;
  39.  
  40. $username = $_SESSION['username'];
  41. $password = $_SESSION['password'];
  42. if ((empty($username)) AND (empty($password)))
  43. {
  44. echo '<br>Nie byłeś zalogowany albo zostałeś wylogowany<br><a href="index.php">Strona Główna</a><br>';
  45. }
  46. $user = (mysql_query("SELECT * FROM uzytkownicy WHERE `uzytkownik`='$username' AND `haslo`='$password' LIMIT 1"));
  47.  
  48. if (empty($user[id]) OR !isset($user[id]))
  49. {
  50. echo '<br>Nieprawidłowe logowanie.<br>';
  51. }
  52. // tresc dla zalogowanego uzytkownika
  53. echo 'Witaj '.$username[uzytkownik].' zostałeś/aś pomyślnie zalogowany/a, tutaj umieść ukryta strone tylko dla zalogowanych';
  54.  
  55. }
  56. ?>


Oto skrypt , problem jest taki , ze jakbym nie zmienil zapytanie caly czas.
Kod
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\Program Files\VertrigoServ1\www\mojastrona\zalogowano.php:11) in C:\Program Files\VertrigoServ1\www\mojastrona\zalogowano.php on line 11

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\Program Files\VertrigoServ1\www\mojastrona\zalogowano.php:11) in C:\Program Files\VertrigoServ1\www\mojastrona\zalogowano.php on line 11
3Logowanie nieudane. Sprawdź pisownię nicku oraz hasła.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
sadistic_son
post
Post #2





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Wywal to:
  1. if ($_GET['username'] != '') { //jezeli ktos przez adres probuje kombinowac
  2. }
  3. if ($_GET['password'] != '') { //jezeli ktos przez adres probuje kombinowac
  4. }
Bo skoro te dane przesyłasz POSTem to GET zawsze bedzie pusty czyli !isset.

W ogole masz tonę błędów w tym skrypcie! Wywal linijki 55 i 56 a zamiast 43 wstaw to:
  1. $query="SELECT * FROM `rejestracja` WHERE `uzytkownik` = '".$username."' AND `haslo` = '".$password."' LIMIT 1";
  2. $istnick_zapytanie=mysql_result(mysql_query($query),0);


Twoj caly skrypt nie ma wiekszego sensu. Masz tu poprawione...
  1. <?php session_start(); ?>
  2. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
  3. <html>
  4. <head>
  5. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  6. <title></title>
  7. </head>
  8. <body>
  9. <html>
  10.  
  11.  
  12.  
  13. <?php
  14. // laczenie z baza danych i wybor bazy danych
  15.  
  16. $db = mysql_connect("localhost","root","vertrigo") or die ("polaczenie nie moze byc zrealizowane");
  17. $wyborbazy = mysql_select_db("strona") or die ("nie ma takiej bazy danych");
  18.  
  19. if(isset($_POST['username'])){
  20. $username = $_POST['username'];
  21. }else{ echo 'podaj login';}
  22. if(isset($_POST['password'])){
  23. $password = md5($_POST['password']);
  24. }else{echo 'podaj haslo';}
  25.  
  26.  
  27. $query="SELECT * FROM `rejestracja` WHERE `uzytkownik` = '".$username."' AND `haslo` = '".$password."' LIMIT 1";
  28.  
  29. if(!mysql_result(mysql_query($query),0)){
  30. echo 'Logowanie nieudane. Sprawdź pisownię nicku oraz hasła.';
  31. }
  32. else
  33. {
  34.  
  35. $_SESSION['zalogowany_user_login'] = $username;
  36.  
  37. // tresc dla zalogowanego uzytkownika
  38. echo 'Witaj '.$_SESSION['zalogowany_user_login'].' zostałeś/aś pomyślnie zalogowany/a, tutaj umieść ukryta strone tylko dla zalogowanych';
  39.  
  40. }
  41. ?>


Ten post edytował sadistic_son 20.04.2010, 18:54:14
Go to the top of the page
+Quote Post

Posty w temacie


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: 13.10.2025 - 15:34