Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Problem z klasa
Balon
post
Post #1





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


Pomyslalem ze napisze sobie klase ktora ma za zadanie pobierac dane z bazy

  1. <?
  2. class pomysly_szukaj
  3. {
  4. /** [wyszukiwanie] kategoria */
  5. var $_kategoria;
  6.  
  7. /** ile pomyslow na strone */
  8. var $_ile = '10';
  9.  
  10. /** [wyszukiwanie] sposób sortowania */
  11. var $_sort = 'desc';
  12.  
  13. /** [wyszukiwanie] szukane slowo */
  14. var $_keyword;
  15.  
  16. /** [wyszukiwanie] wedlug autora */
  17. var $_autor;
  18.  
  19. /** wyniki wyszukiwania */
  20. var $_wynik = array();
  21.  
  22.  
  23. /** ustawia parametr szukania - ile */
  24. function ustaw_ile($ile){
  25. $this->$_ile = $ile;
  26. }
  27.  
  28.  
  29. /** ustawia parametr szukania - sortowanie */
  30. function ustaw_sort($sort){
  31. $this->$_sort = $sort;
  32. }
  33.  
  34.  
  35. /** ustawia parametr szukania - slowo do szukania */
  36. function ustaw_keyword($keyword){
  37. $this->$_keyword = $keyword;
  38. }
  39.  
  40.  
  41. /** ustawia parametr szukania - slowo do szukania */
  42. function ustaw_autor($autor){
  43. $this->$_keyword = $autor;
  44. }
  45.  
  46.  
  47. /** przygotowanie do wyswietlenia */
  48. function do_wyszukiwania(){
  49. /* usuwanie zbednych spacji */
  50. $this->_kategoria = trim($this->_kategoria);
  51. $this->_ile = trim($this->_ile);
  52. $this->_sort = trim($this->_sort);
  53. $this->_keyword = trim($this->_keyword);
  54. $this->_autor = trim($this->_autor);
  55. /* usuwanie znacznikow html */
  56. $this->_kategoria = strip_tags($this->_kategoria);
  57. $this->_ile = strip_tags($this->_ile);
  58. $this->_sort = strip_tags($this->_sort);
  59. $this->_keyword = strip_tags($this->_keyword);
  60. $this->_autor = strip_tags($this->_autor);
  61. }
  62.  
  63. function szukaj(){
  64. /* laczenie z baza */
  65. connect();
  66. /* tworzenie zapytania */
  67. $query = "SELECT id, tytul, opis, kategoria FROM `pomysly` where opis LIKE '%".$this->_keyword."%' ".(isset($this->_kategoria) ? : 'AND kategoria = '.$this->_kategoria.'' : '') (isset($this->_autor) ? : 'AND autor = '.$this->_autor.'' : '')." ORDER BY id ".$this->_sort.";
  68. $wykonaj = mysql_query($query);
  69. /* wrzucanie danych do tablicy */
  70. while ($row = mysql_fetch_array($wykonaj))
  71. {
  72.  
  73. ?>


ale doszedlem do momentu w ktorym pobieram dane z bazy... no i mam klopot bo nie wiem w jaki sposob to zapisac do tablicy i w jaki sposob to potem wyciagac z niej... poprostu nie wiem w jaki sposob mam dodac to wszystko do tablicy zeby to dzialalo wogole... klasy nie testowalem jeszcze wiec jesli ktos widzi blad to bede wdzieczny jak mi go pokaze (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) nawet nie wiem czy ta klasa bedzie dzialala ale ... kto wie ;]

Ten post edytował Balon 25.01.2006, 15:31:22
Go to the top of the page
+Quote Post
TomASS
post
Post #2





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

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


1. Bardzo ładna enkapsulacja (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ale wydaje mi się, że to:
  1. <?php
  2.  
  3. function ustaw_autor($autor){
  4. $this->$_keyword = $autor;
  5. }
  6.  
  7.  
  8. /** przygotowanie do wyswietlenia */
  9. function do_wyszukiwania(){
  10. /* usuwanie zbednych spacji */
  11. $this->_kategoria = trim($this->_kategoria);
  12. $this->_ile = trim($this->_ile);
  13. .
  14. .
  15. .
  16.  
  17. ?>

lepiej by bylo gdyby:
  1. <?php
  2.  
  3. function ustaw_autor($autor){
  4. $this->$_keyword = trim($autor);
  5. }
  6.  
  7. ?>



2. Zapomiałeś o znakach: "; na końcu 70 linii:
  1. <?php
  2.  
  3. $query = "SELECT id, tytul, opis, kategoria FROM `pomysly` where opis LIKE '%".$this->_keyword."%' ".(isset($this->_kategoria) ? : 'AND kategoria = '.$this->_kategoria.'' : '') (isset($this->_autor) ? : 'AND autor = '.$this->_autor.'' : '')." ORDER BY id ".$this->_sort.";";
  4.  
  5. ?>



3. Co do Twojego pytania:
robisz sobie np:
  1. <?php
  2.  
  3. $=0;
  4. while ($row = mysql_fetch_array($wykonaj)){
  5.  $wyniki[$i][id]=$row['id'];
  6.  $wyniki[$i][tytul]=$row['tytul'];
  7.  .
  8.  .
  9.  .
  10.  $i++;
  11. }
  12. return $wyniki;
  13.  
  14. ?>
Go to the top of the page
+Quote Post
Balon
post
Post #3





Grupa: Zarejestrowani
Postów: 422
Pomógł: 0
Dołączył: 14.12.2005
Skąd: Wałbrzych

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


Cytat(TomASS @ 2006-01-25 15:52:11)
1. Bardzo ładna enkapsulacja (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Ale wydaje mi się, że to:
  1. <?php
  2.  
  3. function ustaw_autor($autor){
  4. $this->$_keyword = $autor;
  5. }
  6.  
  7.  
  8. /** przygotowanie do wyswietlenia */
  9. function do_wyszukiwania(){
  10. /* usuwanie zbednych spacji */
  11. $this->_kategoria = trim($this->_kategoria);
  12. $this->_ile = trim($this->_ile);
  13. .
  14. .
  15. .
  16.  
  17. ?>

lepiej by bylo gdyby:
  1. <?php
  2.  
  3. function ustaw_autor($autor){
  4. $this->$_keyword = trim($autor);
  5. }
  6.  
  7. ?>



2. Zapomiałeś o znakach: "; na końcu 70 linii:
  1. <?php
  2.  
  3. $query = "SELECT id, tytul, opis, kategoria FROM `pomysly` where opis LIKE '%".$this->_keyword."%' ".(isset($this->_kategoria) ? : 'AND kategoria = '.$this->_kategoria.'' : '') (isset($this->_autor) ? : 'AND autor = '.$this->_autor.'' : '')." ORDER BY id ".$this->_sort.";";
  4.  
  5. ?>



3. Co do Twojego pytania:
robisz sobie np:
  1. <?php
  2.  
  3. $=0;
  4. while ($row = mysql_fetch_array($wykonaj)){
  5.  $wyniki[$i][id]=$row['id'];
  6.  $wyniki[$i][tytul]=$row['tytul'];
  7.  .
  8.  .
  9.  .
  10.  $i++;
  11. }
  12. return $wyniki;
  13.  
  14. ?>

co do 1. i 2. to sie zgadzam ;] przesadzilem (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
A co do odpowiedzi to dzieki ;] teraz juz bede wiedzial jak to robic (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) pozdrawiam
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: 24.08.2025 - 22:39