Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Błąd w kodzie (OOP)
Forum PHP.pl > Forum > Przedszkole
h0h
Co zrobiłem źle w tym kodzie ?
  1. <?php
  2. class sLogin{
  3. var $dbConnection;
  4. function dbConnect_mysql($dbConnection){
  5. $dbConnection = explode(&#092;".\", $dbConnection);
  6. mysql_connect($this->$dbConnection[0], $dbConnection[1], $dbConnection[2]);
  7. mysql_select_db($this->$dbConnection[3]);
  8.  }
  9.  }
  10. class sQuery{
  11. var $sql; 
  12.  function DOsQuery($m_query){ 
  13.  if (isset($m_query)) {
  14.  $this->sql = $m_query;
  15.  mysql_query($this->sql); 
  16.  }
  17.  } 
  18.  }
  19.  
  20.  
  21. class sResult{
  22. function return_result(){
  23. $polacz = new sLogin;
  24. $polacz->dbConnect_mysql(&#092;"localhost.root.krasnal.php\");
  25. $zapytanie = new sQuery;
  26. $result = $zapytanie->DOsQuery(&#092;"SELECT * FROM TABELA\");
  27. while ($line = mysql_fetch_array($result)){
  28. echo $line[pole];
  29. }
  30. }
  31.  }
  32. $test = new sResult;
  33. $test->return_result();
  34. ?>

Wyświtla mi:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\apache\httpd\html\site\db.php on line 27
Nie wybrano żadnej bazy danych
NuLL
Baza danych wybrana w mysql_select_db nie istanije rolleyes.gif
h0h
Poprawiłem to w ten sposób ale ciągle to samo dry.gif
  1. <?php
  2. class sLogin{
  3. var $dbConnection;
  4. function dbConnect_mysql($dbConnection){
  5. $this->$dbConnection = explode(&#092;".\", $dbConnection);
  6. mysql_connect($this->$dbConnection[0], $this->$dbConnection[1], $this->$dbConnection[2]);
  7. mysql_select_db($this->$dbConnection[3]);
  8.  }
  9.  }
  10. class sQuery{
  11. var $sql; 
  12.  function DOsQuery($m_query){ 
  13.  if (isset($m_query)) {
  14.  $this->sql = $m_query;
  15.  mysql_query($this->sql); 
  16.  }
  17.  } 
  18.  }
  19.  
  20.  
  21. class sResult{
  22. function return_result(){
  23. $polacz = new sLogin;
  24. $polacz->dbConnect_mysql(&#092;"localhost.root.krasnal.php\");
  25. $zapytanie = new sQuery;
  26. $result = $zapytanie->DOsQuery(&#092;"SELECT * FROM TABELA\");
  27. while ($line = mysql_fetch_array($result)){
  28. echo &#092;"$line[pole]\";
  29. }
  30. }
  31.  }
  32. $test = new sResult;
  33. $test->return_result();
  34. ?>
NuLL
Trudno tu cos porporawiac dskoro bazki nie ma
h0h
Baza istnieje winksmiley.jpg
(db) php
|
\
(table) tabela


Coś chyba w kodzie namieszałem rolleyes.gif
NuLL
Napewno - pewnie indeksy tablicy ci sie....pomyliły
Guest
Indeksy są w porządku. Uczę się dopiero OOP zachciało mi się w sylwestra cool.gif
Muszę znaleźć błąd snitch.gif
Tym sposobem wszystko jest O.K zwraca rekord z bazy.
  1. <?php
  2. mysql_connect(&#092;"localhost\", \"root\", krasnal);
  3. mysql_select_db(&#092;"php\");
  4. $sql = &#092;"SELECT * FROM TABELA\";
  5. $result = mysql_query($sql);
  6. $line = mysql_fetch_array($result);
  7. echo $line['pole'];
  8. ?>
Wankster
W DOsQuery przed mysql_query($this->sql); dodaj return .
Guest
Wcześniej już tak robiłem ale ciągle to samo. Dałem więc jeszcze raz return przed mysql_query($this->sql); i ciągle to samo:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in c:\usr\apache\httpd\html\site\db.php on line 27
Nie wybrano żadnej bazy danych
tiraeth
  1. <?php
  2. // ........
  3. class sResult{
  4. function return_result(){
  5. $polacz = new sLogin;
  6. $polacz->dbConnect_mysql(&#092;"localhost.root.krasnal.php\");
  7. $zapytanie = new sQuery;
  8. $result = $zapytanie->DOsQuery(&#092;"SELECT * FROM TABELA\");
  9. while ($line = mysql_fetch_array($result)){
  10. echo &#092;"$line[pole]\";
  11. }
  12. }
  13. }
  14. // ........
  15. ?>


po co wykonujesz funkcję z klasy w klasie questionmark.gif

polecam przeglądnąć pliki phpBB tam jest ładnie wszystko zrobione smile.gif
splatch
Być może przyda Ci się ten kod: http://splatch.info/galeria/MysqlDriver.phps
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.