Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Niedziałająca klasa
Forum PHP.pl > Forum > Przedszkole
w00t
Witam. Pierwszy raz zacząłem programowac w oop. I tu Cie mamy:

Pliczek z klasami:

  1. <?php
  2.  
  3. class db{
  4.  
  5. var $user = 'user';
  6. var $host = 'localhost';
  7. var $pass = 'lol';
  8. var $baza = 'baza'; 
  9.  
  10. function connect() {
  11. $db = @mysql_connect($host, $user, $pass) OR die('Nie można polaczyc z baza danych...');
  12. $bd = @mysql_select_db($baza) or die('Błąd wyboru bazy danych.'); 
  13. if($db and $bd) return true;
  14. else return false;
  15. }
  16. function query($sql) {
  17. $wynik = @mysql_query($sql);
  18. if(!$wynik) return false;
  19. else {
  20. return $wynik;
  21. }
  22. }
  23. function dane($wynik) {
  24. $dane = @mysql_fetch_array($wynik);
  25. if($dane) return $dane;
  26. else return false;
  27. }
  28. function ile($wynik, $type=1) {
  29. if($type==1) {
  30. $ile = @mysql_num_rows($wynik);
  31. }
  32. elseif($type==2) {
  33. $ile = @mysql_affected_rows($wynik);
  34. }
  35. if($ile) return $ile;
  36. else return false;
  37. }
  38.  
  39. }
  40.  
  41. //------------------------------------------------------------------------//
  42. //------------------------------------------------------------------------//
  43.  
  44. class categories {
  45.  
  46. var $cat = 'kategoria';
  47. var $art = 'dzial';
  48.  
  49. function head($id) {
  50. $sql = "SELECT obrazek FROM \"$cat\" WHERE id=\"$id\"";
  51. $wynik = $db->query($sql);
  52. $dane = $db->dane($wynik);
  53. $obrazek = $dane['obrazek'];
  54.  
  55. echo '<table id="table10" style="border-width: 0px; border-collapse: collapse;" border="1" width="100%"><tbody><tr><td style="border-style: none; border-width: medium;" bgcolor="#0d0d0b"><p style="margin-top: 0pt; margin-bottom: 0pt;"><img src="'.$obrazek.'" border="0" height="15" width="150></p>';
  56. if($a==1) {
  57. echo '<a href="menu.php?mode=usun$id='.$id.'">x</a>';
  58. }
  59. echo '</td></tr>';
  60.  
  61. }
  62. function get() {
  63. $sql = "SELECT id FROM \"$cat\"";
  64. $wynik = $db->query($sql);
  65. $dane = $db->dane($wynik);
  66. echo '<table id="table10" style="border-width: 0px; border-collapse: collapse;" border="1" width="100%"><tbody>';
  67. while($dane) {
  68. $id = $dane['id'];
  69. $this->head($id);
  70. if($a==1) $this->admincat($id, 'edytuj');
  71. $this->articles($id);
  72. }
  73. if($a==1) $this->admincat($id, 'dodaj');
  74. echo '</tbody></table>';
  75. }
  76. function admincat($id, $mode) {
  77. if($a==1) {
  78. echo '<tr><td style="border-style: none; border-width: medium;" bgcolor="#0d0d0b"><p style="margin-top: 0pt; margin-bottom: 0pt;">
  79. <form action="menu.php?mode='.$mode.'&id='.$id.'" method="">
  80.  <input type="text" name="name" value="Nazwa działu" size="7"><br>
  81.  <input type="text" name="img" value="Lokalizacja obrazka" size="7">
  82. </form>
  83. </p></td></tr>';
  84. }
  85. }
  86. function articles($kid) {
  87. $sql = "SELECT id, tytul FROM \"$art\" WHERE kid=\"$kid\"";
  88. $wynik = $db->query($sql);
  89. $dane = $db->dane($wynik);
  90. echo '<tr>';
  91. while($dane) {
  92. $tytul = stripslashes($dane['tytul']);
  93. $id = $dane['id'];
  94. echo '<td style="border-style: none; border-width: medium;">
  95. <p style="margin-top: 0pt; margin-bottom: 0pt;"><font style="font-size: 8pt;" face="Tahoma">
  96. <a target="I1" href="article.php?id='.$id.'"><span style="text-decoration: none;">'.$tytul.'</a>';
  97. if($a==1) { 
  98. echo '<font style="font-size: 8pt;" face="Tahoma"><a target="I1" href="article.php?mode=edit&$id='.$id.'"> e </a></font>';
  99. echo '<font style="font-size: 8pt;" face="Tahoma"><a target="I1" href="article.php?mode=usun&$id='.$id.'">x</a></font>';
  100. }
  101. if($a==1) {
  102. echo '<font style="font-size: 8pt;" face="Tahoma"><a target="I1" href="article.php?mode=dodaj&$id='.$kid.'">Dodaj nowy dział</a></font>';
  103. }
  104. echo '
  105. <br>
  106. </span>
  107. </font>
  108. </p></td>';
  109. }
  110. echo '</tr>';
  111. }
  112.  
  113. }
  114. //-----------------------------------------------------------------//
  115. class article {
  116.  
  117. var $art = 'dzial';
  118. var $id;
  119.  
  120. function article($id) {
  121. global $id;
  122. }
  123.  
  124. function get($id) {
  125. $sql = "SELECT * FROM \"$art\" WHERE id=\"$id\"";
  126. $wynik = $db->query($sql);
  127. $ile = $db->ile($wynik);
  128. if($ile==0) return false;
  129. $dane = $db->dane($wynik);
  130. if(!$dane) return false;
  131.  
  132. $data = $dane['data'];
  133. $dat = explode(' ', $data);
  134. $dzien = str_replace('-', '.', $dat['0']);
  135. $return = array();
  136. $return['id'] = $dane['id'];
  137. $return['kid'] = $dane['kid'];
  138. $return['tytul'] = stripslashes($dane['tytul']);
  139. $return['autor'] = $dane['autor'];
  140. $return['ip'] = $dane['ip'];
  141. $return['dzien'] = $dzien;
  142. $return['godz'] = $godz;
  143. $return['tresc'] = stripslashes($dane['tresc']);
  144. $return['lastedit'] = stripslashes($dane['lastedit']);
  145. return $return;
  146.  
  147. }
  148.  
  149.  
  150. }
  151.  
  152. ?>



I odwołania do klas
  1. <?php
  2.  
  3. $db = new db();
  4. $db->connect();
  5.  
  6.  
  7. $cat = @new categories;
  8. $cat->get();
  9.  
  10. $sql = "DELETE FROM kategoria WHERE id=\"$id\"";
  11. $wynik = $db->query($sql);
  12.  
  13. $art = @new article;
  14. $dane = $art->get($id);
  15.  
  16.  
  17. ?>


Jednak gdy łąduje sajta to jest cała pusta strona.
Co ja źle robię?
sf
Wyrzuc wszystkie @, daj na poczatku error_reporting(E_ALL);
mike
Zamykam.

Przodujesz w moim rankingu na najgorszy temat wszechczasów.
"Napisałem skrypt, który nie działa."

1. Podaj opis klas i/lub działania skryptu. Podaj błędy jakie masz. Co nie działa? Co Ty myślsz że chlapniesz jakimś kodem i zadowolony odpowiedź dostaniesz. Włóż trochę wysiłku w pytanie jeśli oczekujesz odpowiedzi.
2. Otworzę jak wymyślisz jakiś normalny, opisujący problem zawarty w wątku, temat. Wyślij mi go na PW (wraz z linkiem do wątku)

---
Otwieram.
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.