Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Gdzie ERROR ? :>
Balas
post 19.09.2005, 16:58:36
Post #1





Grupa: Zarejestrowani
Postów: 347
Pomógł: 0
Dołączył: 27.08.2005
Skąd: Inowrocław

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


Robie skrypt ktory otwiera sesje jezeli sa odpowiednie dane w cookies. Mam taki kod:

index.php:
  1. <? 
  2. include "function.php";
  3.  
  4. if (isset($_SESSION["login"]))
  5. {
  6. echo('jestes zalogowany');
  7. echo('<a href="wyloguj.php?wyloguj=1">WYLOGUJ</a>');
  8. }
  9. if (isset($_SESSION["admin"]))
  10. {
  11. echo('jestes zalogowany jako admin');
  12. echo('<a href="wyloguj.php?wyloguj=2">WYLOGUJ</a>');
  13. }
  14.  
  15.  
  16. ?>


Function.php
  1. <?
  2. $luser = $_COOKIE["user"]; 
  3. $pass = $_COOKIE["pass"]; 
  4. $id = $_COOKIE["id"]; 
  5.  
  6. $strVarHost = 'localhost';
  7. $strVarUser = 'root';
  8. $strVarPasswd = 'Hammett';
  9. $strVarBaza = 'IPB';
  10.  
  11. mysql_connect ("localhost", "root", "Hammett"); // Łączenie się z bazą.
  12. $sqlSelect = mysql_select_db("IPB");
  13.  
  14. $sqlQuery = mysql_query("SELECT * FROM ipb_members WHERE id = '$id' ");
  15. $sqlArray = mysql_fetch_array($sqlQuery);
  16.  
  17. if ($sqlArray == TRUE)
  18. {
  19. $sqlPass = $sqlArray['legacy_password'];
  20. $sqlId = $sqlArray['id'];
  21.  
  22. if ($luser == 1 && $id == $sqlId && $pass == $sqlPass)
  23. {
  24. }
  25. if ($luser == 2 && $id == $sqlId && $pass == $sqlPass)
  26. {
  27. }
  28.  
  29. }
  30.  
  31. ?>


Dane w cookies sa bo sprawadzalem przez echo ($luser); itd.

Gdzie robie błąd questionmark.gif

Ten post edytował OnE.Killer 19.09.2005, 17:00:43


--------------------
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
qbuz
post 20.09.2005, 22:48:21
Post #2





Grupa: Zarejestrowani
Postów: 45
Pomógł: 0
Dołączył: 4.02.2004

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


Cytat(mike_mech)
Przecież wiadomo że && jest silniejsze od == dlaego Ci źle działa.

"Raczej" na odwrot.

Cytat(php Manual)
Poniższa tabela zawiera priorytet operatorów, od najniższego priorytetu na górze.

Powiązanie || Operator
lewe || ,
lewe || or
lewe || xor
lewe || and
prawe || print
lewe || = += -= *= /= .= %= &= |= ^= ~= <<= >>=
lewe || ? :
lewe || ||
lewe || &&
lewe || |
lewe || ^
lewe || &
bez powiązania || == != === !==
bez powiązania || < <= > >=



Cytat(OnE.Killer)
to jak powinno byc questionmark.gif

Dobrze miales


@OnE.Killer: Czy na pewno tamte wszystkie IFy w function.php zwracaja ci TRUE?

Sprawdz to np. w taki sposob:

  1. <?php
  2.  
  3. if ($sqlArray == TRUE)
  4. {
  5. print 'dziala 1<br />';
  6. }
  7.  
  8. if ($luser == 1 && $id == $sqlId && $pass == $sqlPass)
  9. {
  10. print '2 tez dziala<br />';
  11. }
  12.  
  13. // i tak dalej...
  14.  
  15.  
  16. ?>


Gdy bedziesz tak sprawdzal, to wykomentuj najlepiej session_start(); itd., zeby nie wywalalo bledow (nie mozna wyslac header'ow).
Co to sa w ogole te ob_start(); tam?
ob_start(); daj na sam poczatek calego kodu, a na sam koniec ob_end_flush;


PS: Coz to?? ;]
  1. <?php
  2.  
  3. $strVarHost = 'localhost';
  4. $strVarUser = 'root';
  5. $strVarPasswd = 'Hammett';
  6. $strVarBaza = 'IPB';
  7.  
  8. mysql_connect ("localhost", "root", "Hammett"); // Łączenie się z bazą.
  9. $sqlSelect = mysql_select_db("IPB");
  10.  
  11. ?>
Go to the top of the page
+Quote Post

Posty w temacie


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 - 18:45