Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problemy techniczne
Forum PHP.pl > Forum > PHP
Spirit86
Witam, czy może mi ktoś wytłumaczyć, dlaczego ten baran (serwer php winksmiley.jpg) nie rozumie co się do niego "mówi". mianowicie mam klasę połaczenia z Bazą Danych, prosta, bo prosta, ale jest :]. Oto część odpowiedzialna za zadanie pytania (uproszczona z deka winksmiley.jpg):
  1. <?php
  2. function query($query)
  3.  {
  4. $this -> query_result = '';
  5.  
  6. $this -> query_result = @mysql_db_query($this -> dbname, $query, $this -> connect_id);
  7. if(!$this -> query_result)
  8. {
  9.  $this -> return_error('Problem with Query, wrong Syntrax', __LINE__, __FILE__, $query);
  10.  return false;
  11. }
  12. else
  13. {
  14.  return true;
  15. }
  16.  }
  17. ?>

no i zadaję two-man-owi pytanie:
  1. SELECT *
  2. FROM news WHERE stat=1 ORDER BY date DESC LIMIT

no i co? no własnie no i zwraca mi błąd. Problem w tym, że nie ma żadnego błedu mysql_error(); . normalnie to już wymiękam tongue.gif
M4chu
Sprobuj zamiast mysql_db_query (manual: "This function has been deprecated since php 4.0.6. Do not use this function." smile.gif ) zrobic cos ala
  1. <?php
  2.  
  3. $connection = mysql_connect( $host, $user, $password );
  4. mysql_select_db( $database, $connection );
  5. $result = @mysql_query( $query, $connection );
  6.  
  7. if( ! $result )
  8. {
  9. echo( mysql_error( $connection );
  10. }
  11.  
  12. ?>

moze sie przyda, moze mysql_db_query poprostu nie wspolpracuje z mysql_query.

pozdro
dr_bonzo
  1. SELECT *
  2. FROM news WHERE stat=1 ORDER BY date DESC LIMIT !!!!!!!!!!!! TU POWINNA BYC JAKAS LICZBA

?

edit:
----
Pokaz jaki blad ci wyskakuje.
bela
Wywal tą małpę, ustaw raportowanie bledow na E_ALL i zobacz.
Spirit86
sprawdziłem. oto większa część klasy:

  1. <?php
  2.  
  3.  $this -> connect_id = @mysql_connect($db_host, $db_user, $db_pass);
  4.  
  5.  
  6. if($this -> connect_id)
  7. {
  8.  $dbselect = @mysql_select_db($db_name, $this -> connect_id);
  9.  if(!isset($dbselect)){
  10. $this -> return_error('Problem with db selecting', __LINE__, __FILE__);
  11. mysql_close($this -> connect_id);
  12. return false;
  13.  }
  14.  else{ //connetcion are established and data base has been selected
  15. $this -> dbname = $db_name;
  16. return true;
  17.  }
  18. }
  19. else
  20. {
  21.  $this -> return_error('There are problem with establishing connection with db', __LINE__, __FILE__);
  22.  return false;
  23. }
  24.  }//end connection function
  25.  function query($query)
  26.  {
  27. $this -> query_result = '';
  28. $this -> query_result = mysql_query($query, $this->connect_id);
  29.  
  30. ?>


a to jest wynik:
Warning: mysql_query(): 9 is not a valid MySQL-Link resource in ... on line 41
dr_bonzo
Przy wykonaniu zapytania (mysql_query) nie sprawdzasz czy polaczenie jest ok -- jak mowil bela_666 -- usun malpy i sprawdz gdzi ejest blad.
Spirit86
sprawdzałem wyłączanie tejże @, skopiowałem starą wersję. Nie zwraca żadnego błedy. mam E_ALL on
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.