Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Logowanie na Cookies, problem ze skryptem logowania
Reiven
post
Post #1





Grupa: Zarejestrowani
Postów: 100
Pomógł: 1
Dołączył: 17.03.2006

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


Witam, po wielu mordęgach udało mi sie sklepać w skrypt logowania, lecz wyskakuje mi błąd:

Kod
Warning: Cannot modify header information - headers already sent by (output started at C:\Program Files\WebServ\httpd\news\zaloguj.php:2) in C:\Program Files\WebServ\httpd\news\zaloguj.php on line 33

i nie wiem co złego zrobiłem.
oto kod:
Kod
<?php
include ('config.php');
$db = mysql_connect ("$host", "$login", "$pass");
mysql_select_db ($baza);

$login = $_POST['user'];
$haslo = $_POST['haslo'];

$query = "SELECT * FROM admin WHERE user='$user'; ";
$result = mysql_query ($query);
$ile_user = mysql_num_rows($result);

if ($ile_user > 0)
{
$query2 = "SELECT * FROM admin WHERE user='$user' AND haslo='$haslo';";
$result2 = mysql_query ($query2);
$ile_user2 = mysql_num_rows($result2);

if ($ile_user2 > 0)
{
setcookie ("user2_c", $user,time()+3600);
setcookie ("haslo2_c", $haslo,time()+3600);
header("Location: admin.php?s=zobacz");
}
else
{
header("Location: index.php");        
}
}
else
{
header("Location: index.php");
}

mysql_close ($db);
?>
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
strife
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 2 605
Pomógł: 96
Dołączył: 22.10.2004
Skąd: UK

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


Dziwny ten Twój kod, ale już mniej więcej wiem o co chodzi, tak więc w miejscu w którym chcesz sprawdzić czy dany użytkownik ma uprawnienia na stronę musisz umieścić kod, który sprawdzi czy login i hasło usera zawarte w ciasteczkach są takie jak u Ciebie w bazie i wtedy daje dostęp.

Myślę, że pierwsze co powinieneś zrobić po poprawnym zalogowaniu to sprawdzić, czy dane ciasteczka istnieją, wtedy upewnisz się, że Twój cały skrypt do logowania działa prawidłowo.
  1. <?php
  2. print_r( $_COOKIE );
  3. ?>

Jeśli wszystko przechodzi bezbłędnie to teraz przejdźmy do tego miejsca, w którym chcesz sprawdzić czy użytkownik ma uprawnienia, czyli czy jest zalogowany.
  1. <?php
  2. if ( isset ( $_COOKIE['user2_c'] ) && isset ( $_COOKIE['haslo2_c'] ) )
  3. {
  4. // .. tutaj sprawdzamy czy login i haslo odpowiada
  5. // .. temu zapisanemu w bazie
  6. $user = $_COOKIE['user2_c'];
  7. $pass = $_COOKIE['haslo2_c'];
  8.  
  9. $p = mysql_query( "SELECT * FROM admin WHERE user = '" . $user . "' AND haslo = '" . $pass . "' ;");
  10. $fetch = mysql_fetch_array( $p );
  11. if ( $fetch )
  12. {
  13. echo 'masz dostep do strony'; 
  14. }
  15. else
  16. {
  17. echo 'Wystapily bledy, zaloguj sie ponownie!';
  18. }
  19. }
  20. else{
  21. echo 'Przykro mi, ale nie masz uprawnien aby ogladac ta strone!';
  22. }
  23. ?>

Oczywiście to jest taki mały zarys. Mogłem się gdzieś walnąć. Jednak samą ideę już masz. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Pozdrawiam!
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 - 11:50