Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Warunek na wlasnosc obiektu i string
Forum PHP.pl > Forum > PHP
dr_grucha
Mam nastepujacy problem napisalem taki skrypcik ale on nic nie wyswietla (tzn. white screen biggrin.gif). Chodzi o to zeby skrypt pokazywal wszystkie pozycje tablicy w ktorych $book->typ_pub jest rowny 'KS'

Oto moj skrypt:
  1. <?  foreach($ksiazki as $book){ 
  2. if ($book->typ_pub != 'KS') { 
  3. continue; 
  4. } 
  5. echo '<hr> 
  6. <b>Tytuł</b>: '.$book -> tytul.'<br> 
  7. <b>Autor</b>: '.('.$book -> autor.' != ' . ' ? ''.$book -> wydawca.'' : 'brak danych').'<br> 
  8. <b>Wydawnictwo</b>: '.('.$book -> wydawca.' == 1 ? 'brak danych' : ''.$book -> wydawca.'').'<br> 
  9. <b>Oprawa</b>: '.(strlen($book -> oprawa) != 0 ? ''.$book -> oprawa.'' : 'brak danych').'<br> 
  10. <b>Wydanie</b>: '.(strlen($book -> wydanie) != 0 ? ''.$book -> wydanie.'' : 'brak danych').'<br> 
  11. <b>Rok</b>: '.(strlen($book -> robwyd) != 0 ? ''.$book -> rokwyd.'' : 'brak danych').'<br> 
  12. <b>Stron</b>: '.(strlen($book -> objetosc) != 0 ? ''.$book -> objetosc.'' : 'brak danych').'<br> 
  13. <b>ISBN</b>: '.(strlen($book -> isbn) != 0 ? ''.$book -> isbn.'' : 'brak danych').'<br> 
  14. <b>Opis</b>: '.$book -> opis.'<br> 
  15. <b>Okładka</b>: <A href=\"javascript:displayWindow(''.$path_show_image.'?img_indeks='.$book -> indeks.'',300,400)\"
  16. <img alt=\"ZOBACZ SKAN OKŁADKI\" src=\"'.$path_images.'lupa.gif\" border=0></A><br>';
  17.  } 
  18. ?>


Blagam pomozcie!
scanner
  1. <?  foreach($ksiazki as $book){
  2. if ($book->typ_pub == 'KS') {
  3. echo '<hr>
  4. <b>Tytuł</b>: '.$book -> tytul.'<br>
  5. <b>Autor</b>: '.('.$book -> autor.' != ' . ' ? ''.$book -> wydawca.'' : 'brak danych').'<br>
  6. <b>Wydawnictwo</b>: '.('.$book -> wydawca.' == 1 ? 'brak danych' : ''.$book -> wydawca.'').'<br>
  7. <b>Oprawa</b>: '.(strlen($book -> oprawa) != 0 ? ''.$book -> oprawa.'' : 'brak danych').'<br>
  8. <b>Wydanie</b>: '.(strlen($book -> wydanie) != 0 ? ''.$book -> wydanie.'' : 'brak danych').'<br>
  9. <b>Rok</b>: '.(strlen($book -> robwyd) != 0 ? ''.$book -> rokwyd.'' : 'brak danych').'<br>
  10. <b>Stron</b>: '.(strlen($book -> objetosc) != 0 ? ''.$book -> objetosc.'' : 'brak danych').'<br>
  11. <b>ISBN</b>: '.(strlen($book -> isbn) != 0 ? ''.$book -> isbn.'' : 'brak danych').'<br>
  12. <b>Opis</b>: '.$book -> opis.'<br>
  13. <b>Okładka</b>: <A href=\"javascript:displayWindow(''.$path_show_image.'?img_indeks='.$book -> indeks.'',300,400)\">
  14. <img alt=\"ZOBACZ SKAN OKŁADKI\" src=\"'.$path_images.'lupa.gif\" border=0></A><br>';
  15.  }
  16. }
  17. ?>
crash
$book to obiekt który był w tablicy $ksiazki?
dr_grucha
Dalej nic nie wyswietla. Moze dam caly skrypt z pobieraniem danych z xml.

show_data.php
  1. <?
  2.  
  3. include (&#092;"config/pathes.php\"); 
  4. include (&#092;"get_data.php\"); 
  5.  
  6. // WYSWIETLANIE DANYCH 
  7.  
  8. echo '<head><script LANGUAGE=\"JavaScript\" SRC='.$path_js_image.'></SCRIPT></head>
  9. <center>KSIĄŻKI</center><br>'; 
  10.  
  11.  foreach($ksiazki as $book){
  12. if ($book->typ_pub == 'KS') {
  13. echo '<hr>
  14. <b>Tytuł</b>: '.$book -> tytul.'<br>
  15. <b>Autor</b>: '.('.$book -> autor.' != ' . ' ? ''.$book -> wydawca.'' : 'brak danych').'<br>
  16. <b>Wydawnictwo</b>: '.('.$book -> wydawca.' == 1 ? 'brak danych' : ''.$book -> wydawca.'').'<br>
  17. <b>Oprawa</b>: '.(strlen($book -> oprawa) != 0 ? ''.$book -> oprawa.'' : 'brak danych').'<br>
  18. <b>Wydanie</b>: '.(strlen($book -> wydanie) != 0 ? ''.$book -> wydanie.'' : 'brak danych').'<br>
  19. <b>Rok</b>: '.(strlen($book -> robwyd) != 0 ? ''.$book -> rokwyd.'' : 'brak danych').'<br>
  20. <b>Stron</b>: '.(strlen($book -> objetosc) != 0 ? ''.$book -> objetosc.'' : 'brak danych').'<br>
  21. <b>ISBN</b>: '.(strlen($book -> isbn) != 0 ? ''.$book -> isbn.'' : 'brak danych').'<br>
  22. <b>Opis</b>: '.$book -> opis.'<br>
  23. <b>Okładka</b>: <A href=\"javascript:displayWindow(''.$path_show_image.'?img_indeks='.$book -> indeks.'',300,400)\">
  24. <img alt=\"ZOBACZ SKAN OKŁADKI\" src=\"'.$path_images.'lupa.gif\" border=0></A><br>';
  25.  }
  26. }
  27. ?>


get_data.php
  1. <?php
  2.  
  3. include (&#092;"config/pathes.php\");
  4.  
  5. //ZDEFINIOWANIE KLAS, KTÓRE POSŁUŻĄ DO BUDOWY TABLICY ARTUKUŁÓW
  6.  
  7.  class book{
  8. var $indeks;
  9. var $tytul;
  10. var $autorzy;
  11. var $wydawca;
  12. var $oprawa;
  13. var $wydanie;
  14. var $rokwyd;
  15. var $objetosc;
  16. var $isbn;
  17. var $opis;
  18. var $typ_pub;
  19. var $tematyka;
  20.  
  21. function book($id){
  22.  $this -> indeks = $id;
  23.  $this -> autorzy = '';
  24.  $this -> wydawca = '';
  25.  $this -> oprawa = '';
  26.  $this -> wydanie = '';
  27.  $this -> rokwyd = '';
  28.  $this -> objetosc = '';
  29.  $this -> isbn = '';
  30.  $this -> opis = '';
  31.  $this -> typ_pub = '';
  32.  $this -> tematyka = '';
  33.  }
  34. }
  35.  
  36. // $int - ZMIENNA TRZYMAJACA NUMER AKTUALNIE WCZYTYWANEGO ARTYKULU
  37. // $ksiazki - TABLICA ZMIENNYCH
  38. // $czy_book - OKREŚLA CZY AKTUALNIE ZNAJDUJEMY SIE W ZNACZNIKU book
  39.  
  40. $int = 0;
  41. $ksiazki = array();
  42. $czy_book = 0;
  43.  
  44. // FUNKCJA PRZETWARZAJACA OTWARCIE TAGU
  45.  
  46. function tag_start($parser, $attr, $params){
  47. global $act_tag, $int, $ksiazki, $czy_book;
  48. if($attr == 'BOOK' && $czy_book == 1){
  49.  die('Błąd: Niedozwolone zagnieżdżenie redaktorów! :]<br>');
  50. }elseif($attr == 'BOOK' && $czy_book == 0){
  51.  $ksiazki[$int] = new book($params['id']);
  52.  $ksiazki[$int] -> indeks = $params['INDEKS'];
  53.  $czy_book = 1; 
  54. }
  55.  
  56. if($czy_book == 1){
  57.  $act_tag = $attr;
  58. }
  59.  }
  60.  
  61. // FUNKCJA OBROBKI TEKSTU MIEDZY ZNACZNIKAMI
  62.  
  63. function tag_text($parser, $text){
  64. global $act_tag, $int, $ksiazki, $czy_book;
  65.  
  66. if($czy_book == 1){
  67.  switch($act_tag){
  68. case 'TYTUL': $ksiazki[$int] -> tytul .= $text; break;
  69. case 'AUTORZY': $ksiazki[$int] -> autorzy .= $text; break;
  70. case 'WYDAWCA': $ksiazki[$int] -> wydawca .= $text; break;
  71. case 'OPRAWA': $ksiazki[$int] -> oprawa .= $text; break;
  72. case 'WYDANIE': $ksiazki[$int] -> wydanie .= $text; break;
  73. case 'ROKWYD': $ksiazki[$int] -> rokwyd .= $text; break;
  74. case 'OBJETOSC': $ksiazki[$int] -> objetosc .= $text; break;
  75. case 'OPIS': $ksiazki[$int] -> opis .= $text; break;
  76. case 'TYP_PUB': $ksiazki[$int] -> typ_pub .= $text; break;
  77. case 'TEMATYKA': $ksiazki[$int] -> tematyka .= $text; break;
  78.  }
  79. }
  80.  }
  81.  
  82. // FUNKCJA OBSŁUGUJĄCA ZAMYKANIE TAGÓW
  83.  
  84.  function tag_end($parser, $attr){
  85. global $act_tag, $int, $czy_book;
  86. if($attr == 'BOOK' && $czy_book == 1){
  87.  $int++;
  88.  $czy_book = 0;
  89. }
  90.  }
  91.  
  92. // INICJACJA PARSERA XML
  93.  
  94.  $parser = xml_parser_create();
  95.  
  96.  xml_set_element_handler($parser, 'tag_start', 'tag_end');
  97.  xml_set_character_data_handler($parser, 'tag_text');
  98.  
  99.  if(!($fp = fopen($path_db_books, 'r'))) {
  100. die('Nie można otworzyć podanego pliku XML!!!');
  101.  }
  102.  
  103.  while($data = fread($fp, 4096)) {
  104. if(!xml_parse($parser, $data, feof($fp))){
  105.  die(sprintf(&#092;"Błąd XML: %s w linii %d\",
  106.  xml_error_string(xml_get_error_code($_parser)),
  107.  xml_get_current_line_number($parser)));
  108.  }
  109. }
  110.  xml_parser_free($parser); 
  111.  
  112. ?>
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.