![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 3.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
Napisałem skrypt logowania
login.php <?php function checkPass($user, $pass) { $userNameLength = strlen($user); $userPassLength = strlen($pass); if($userNameLength < 3 || $userNameLength > 20 || // LINIA 9 $userPassLength < 6 || $userPassLength > 40){ return 2; } //$prawa = 1; //echo "prawa:".$prawa."<br />"; $host = "localhost"; $userss = "postgres"; $passs = "postgres"; $db = "Kon"; $connection = pg_connect ( "host = $host dbname = $db userss = $user password = $passs "); if ($connection) { printf ("Połączenie z bazą zakończone sukcesem"); } else { print ("Nie można połączyć się z bazą"); } $query = "SELECT Id FROM Users WHERE Nazwa='$user' "; $query .= "AND Haslo='$pass'"; if(!$result = pg_query($query, $connection)) //LINIA 29 { //echo('Wystąpił błąd: nieprawidłowe zapytanie...'); @mysql_close(); return 1; } if(@pg_num_rows($result) != 1){ //echo('Wystąpił błąd: nieprawidłowe wyniki zapytania...'); @pg_close(); return 2; } if(!$row = pg_fetch_row($result)){ //echo('Wystąpił błąd: nieprawidłowe wyniki zapytania...'); @pg_close(); return 1; } $userId = $row[0]; $_SESSION['UserId'] = $userId; $query = "SELECT PrzywilejeId FROM Uzytkownicy_Przywileje WHERE UserId=$userId "; if(!$result = pg_query($query, $connection)){ //echo('Wystąpił błąd: nieprawidłowe zapytanie...'); @pg_close(); return 1; } $_SESSION['Przywileje'] = array(); while($row = mysql_fetch_row($result)){ switch($row[0]){ case 1 : $_SESSION['Przywileje']['Administrator'] = true; case 2 : $_SESSION['Przywileje']['News'] = true; } } @pg_close(); return 0; } session_start(); if(isSet($_SESSION['zalogowany'])){ header("Location: main.php"); } else if(!isSet($_POST["haslo"]) || !isSet($_POST["user"])){ $_SESSION['komunikat'] = "Wprowadź nazwę i hasło użytkownika:"; include('form.php'); } // LINIA 84 else{ $val = checkPass($_POST["user"], $_POST["haslo"]); if($val == 0){ $_SESSION['zalogowany'] = $_POST["user"]; header("Location: main.php"); } else if($val == 1){ $_SESSION['komunikat'] = "Błąd serwera. Zalogowanie nie było możliwe."; include('form.php'); } else if($val == 2){ $_SESSION['komunikat'] = "Nieprawidłowa nazwa lub hasło użytkownika."; include('form.php'); } else{ $_SESSION['komunikat'] = "Błąd serwera. Zalogowanie nie było możliwe."; include('form.php'); } } ?> pojawia się bład (linie błędu zaznaczyłem w kodzie) Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at G:\xampp\htdocs\menu\projekt1\login.php:9) in G:\xampp\htdocs\menu\projekt1\login.php on line 84 Nie wiem co oznacza ten błąd - bardzo proszę o pmoc Ten post edytował Andi2005 14.03.2010, 14:56:54 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 377 Pomógł: 1116 Dołączył: 30.08.2006 Ostrzeżenie: (0%) ![]() ![]() |
Że wysłałeś coś do przeglądarki przed ustawieniem sesji.
-------------------- |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 181 Pomógł: 14 Dołączył: 4.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
session_start(); daje się na samym początku początków, że tak napiszę ;P Najlepiej dać do głównych plików n sam początek, zaraz po <?php i trzeba pamiętać, że ustawia się to TYLKO RAZ, więc wszelkie pliki includowane już nie powinny tego zawierać...
Ten post edytował kuzdo 14.03.2010, 11:57:35 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 3.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
OK Poradziłem sobie z tym błędem , teraz jednak pojawia się następujący
Połączenie z bazą zakończone sukcesem Fatal error: Call to undefined function pg_guery() in G:\xampp\htdocs\login.php on line 29 Czy tak funkcja nie może być ![]() ![]() |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 181 Pomógł: 14 Dołączył: 4.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Przecież masz wyraźnie napisane co jest nie tak... Nie może znaleźć takiej funkcji... I ma rację bo ta funkcja nazywa się pg_query a nie pg_guery.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 14 Pomógł: 0 Dołączył: 3.03.2010 Ostrzeżenie: (0%) ![]() ![]() |
kuzdo dziękuje bardzo
Mam jednak błąd Warning: pg_query() [function.pg-query]: Query failed: ERROR: unterminated quoted string at or near "'testtest" LINE 1: SELECT Id FROM users WHERE Nazwa='test' AND Haslo='testtest ^ in G:\xampp\htdocs\login.php on line 29 Błąd serwera. Zalogowanie nie było możliwe. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 181 Pomógł: 14 Dołączył: 4.06.2008 Ostrzeżenie: (0%) ![]() ![]() |
Jedno pytanie: Umiesz czytać? Masz wyraźnie podane, co jest nie tak. Nie wiem czy zmieniałeś te zapytanie SELECT Id FROM users... ale gdzieś chyba brakuje apostrof albo coś innego...
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.06.2025 - 13:54 |