Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> O co w tym chodzi ?
White_Master
post
Post #1





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 27.02.2005

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


Mam taki kod :
  1. <?php
  2.  
  3. // Łaczenie się z bazą MySQL
  4.  
  5. $strVarHost = 'localhost';
  6. $strVarUser = 'root';
  7. $strVarPasswd = 'krasnal';
  8. $strVarBaza = 'gptr_wm';
  9.  
  10. $sqlConnect = mysql_connect($host, $user, $passwd); // Łączenie się z bazą.
  11. $sqlSelect = mysql_select_db($baza);
  12.  
  13.  
  14. function loguj($imie, $haslo)
  15. {
  16.  
  17. $sqlQuery = mysql_query(&#092;"SELECT * FROM users WHERE user = '$imie' \");
  18. $sqlArray = mysql_fetch_array($sqlQuery);
  19.  
  20.  
  21. if ($sqlArray = TRUE)
  22. {
  23. $sqlUser = $sqlArray['user'];
  24. $sqlPass = $sqlArray['passwd'];
  25.  
  26.  
  27. if ($user == $sqlUser && $passwd == $sqlPass)
  28. {
  29. echo 'Witaj'.$user;
  30.  
  31. }
  32.  
  33.  
  34. }
  35. else
  36. {
  37. echo 'przykro mi, ale podany przez ciebie uzytkownik nie istnieje';
  38. }
  39.  
  40. }
  41.  
  42. $user = $_POST['imie'];
  43. $passwd = $_POST['haslo'];
  44.  
  45. loguj($user, $passwd);
  46.  
  47. ?>

I wyskakuje mi błąd :
Cytat
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\script by white_master beta v 0.2\enter.php on line 18
Go to the top of the page
+Quote Post
Ociu
post
Post #2





Grupa: Moderatorzy
Postów: 1 566
Pomógł: 37
Dołączył: 14.05.2003
Skąd: Kraków




Daj
  1. <?php
  2. $sqlQuery = mysql_query(&#092;"SELECT * FROM users WHERE user = '$imie' \") or die(\"blad: \". mysql_error());
  3. ?>


i napisz co się wyświetliło.

  1. <?php
  2. if ($sqlArray = TRUE)
  3. ?>


zmień na :
  1. <?php
  2.  
  3. if ($sqlArray == TRUE)
  4. ?>


pozdrawiam

Ten post edytował Ociu 5.03.2005, 13:48:01
Go to the top of the page
+Quote Post
M4chu
post
Post #3





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 28.09.2003
Skąd: Rzeszów

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


sprawdz blad za pomoca mysql_error(), np:
  1. <?php
  2.  
  3. $query = &#092;"SELECT (...) \";
  4.  
  5. if( ! $result = @mysql_query( $query ) )
  6. {
  7. die( mysql_error() );
  8. }
  9.  
  10. $array = mysql_fetch_array( $result );
  11.  
  12. ?>


Ten post edytował M4chu 5.03.2005, 13:47:37
Go to the top of the page
+Quote Post
Vertical
post
Post #4





Grupa: Zarejestrowani
Postów: 848
Pomógł: 0
Dołączył: 7.07.2004
Skąd: Wrocław

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


  1. <?php
  2. $sqlQuery = mysql_query(&#092;"SELECT * FROM users WHERE user = '\". $imie .\"' \");
  3. ?>

...albo po prostu przy podawaniu parametrów dla funkcji loguj zmienna $imie podana już jest w apostrofach, jeśli tak, to:
  1. <?php
  2. $sqlQuery = mysql_query(&#092;"SELECT * FROM users WHERE user = \". $imie .\" \");
  3. ?>


Ten post edytował Vertical 5.03.2005, 14:27:26
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #5





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Oj te zapytanie to chyba od wersji Mysql'a i php zależą.
Cytat
<?php
$sqlQuery = mysql_query("SELECT * FROM users WHERE user = ". $imie ." ");
?>


U mnie nie ma problemu z napisaniem
  1. <?php
  2. $sqlQuery = mysql_query(&#092;"SELECT * FROM users WHERE user = '$user';\");
  3. ?>


O ile dam średnik na końcu zapytania zaraz po zmiennej user
Go to the top of the page
+Quote Post
White_Master
post
Post #6





Grupa: Zarejestrowani
Postów: 32
Pomógł: 0
Dołączył: 27.02.2005

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


Oto error :
Cytat
Something is wrong in your syntax obok '..) ' w linii 1
Go to the top of the page
+Quote Post
shizo
post
Post #7





Grupa: Zarejestrowani
Postów: 85
Pomógł: 0
Dołączył: 11.11.2003
Skąd: Lubin

Ostrzeżenie: (10%)
X----


Cytat
loguj($user, $passwd);
A to co?
Go to the top of the page
+Quote Post
strife
post
Post #8





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

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


Witam,

1. Upewnij się czy taka tabela wogóle istnieje (users) - sprawdzałem u siebie i to może być przyczyną.

2. Tak jak mówili moi przedmówcy sprawdź mysql_error co wyświetla... wtedy wszystko się wyjaśni.

@shizo - przypuszczam, a raczej napewno jest to wywołanie funkcji loguj zawartej powyżej kodu.

@White_Master - Tak wiec w miarę możliwości sprawdź to i napisz coś więcej.

Pozdrawiam!
Go to the top of the page
+Quote Post
TomASS
post
Post #9





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Mi się wydaje, że problem leży w:

  1. <?php
  2.  
  3. // Łaczenie się z bazą MySQL
  4.  
  5. $strVarHost = 'localhost';
  6. $strVarUser = 'root';
  7. $strVarPasswd = 'krasnal';
  8. $strVarBaza = 'gptr_wm';
  9.  
  10. $sqlConnect = mysql_connect($host, $user, $passwd); // Łączenie się z bazą.
  11. $sqlSelect = mysql_select_db($baza);
  12.  
  13. ?>


czy nie powinno gdzieś być:
  1. <?php
  2.  
  3. $host = $strVarHost;
  4. $user = $strVarUser;
  5. $passwd = $strVarPasswd;
  6. $baza = $strVarBaza;
  7.  
  8. ?>



A może się mylę?
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 - 06:35