Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Podstawa podstaw a jednak :), Problem z dzieleniem...
thornag
post
Post #1





Grupa: Zarejestrowani
Postów: 504
Pomógł: 2
Dołączył: 31.03.2006
Skąd: Londyn

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


Witam dosc krotkie i proste pytanie.

Dlaczego ponizsze wyrazenie nie zwraca wyniku ?
  1. <?php
  2. $this->rate = $this->rankArray[item_rate] / $this->rankArray[item_rates];
  3. ?>


Probowalem z doubleval itp itp i nadal nic. Gdzie jest blad ?

Ten post edytował thornag 7.07.2006, 11:41:20
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
mike
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 7 494
Pomógł: 302
Dołączył: 31.03.2004

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


Przede wszystkim to masz błąd, powinno być tak:
  1. <?php
  2. $this->rate = $this->rankArray[ 'item_rate' ] / $this->rankArray[ 'item_rates' ];
  3. ?>

Po drugie to sprawdź wcześneij czy zmienne mają wartości i jakie mają wartości.

Sugeruję samemu nauczyć się szukać błędów.
Najczęstsze błędy, Zanim zapytasz, to sprawdź.
Go to the top of the page
+Quote Post
thornag
post
Post #3





Grupa: Zarejestrowani
Postów: 504
Pomógł: 2
Dołączył: 31.03.2006
Skąd: Londyn

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


Ok przy debugowaniu zapomnialem sprawdzic jednego switcha.

Kolejny problem polega na (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) ...

  1. <?php
  2. public function showRate($type) {
  3. $this->type = $type; 
  4. $this->checkRating();
  5. }
  6. ?>


Tak wyglada funkcja ktora wywoluje. A oto funkcja checkRating()

  1. <?php
  2. private function checkRating() {
  3. echo "type = ".$this->type;
  4. ?>


Zaczynam z OOP. Dlaczego zmienna $this->type nie jest widoczna w checkRating() ?
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #4





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




Problem może tutaj stanowić np. widoczność zmiennej w klasie ustawiona na private. Jeśli oróbujesz ją wyłuskać w klasie pochodnej, to się nie uda.
Go to the top of the page
+Quote Post
thornag
post
Post #5





Grupa: Zarejestrowani
Postów: 504
Pomógł: 2
Dołączył: 31.03.2006
Skąd: Londyn

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


Zmienna rzeczywiscie jest prywatna. Klasa jednak jest jedna. Zmeinilem na public i dalej to samo.

jesli zrobie to tak :
  1. <?php
  2. private function checkRating() {
  3.  echo "type = ".$this->type;
  4. }
  5. public function showRate($type) {
  6.  
  7. $this->type = $type; 
  8.  
  9. echo $this->type;
  10.  
  11. $this->checkRating();
  12. }
  13. ?>


To pierwsza showRate wysweitla wartosc $this->type, checkRating natomiast nie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #6





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




hmm... Podzilisz sie kodem całej klasy + kodem użytkującym (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ? Z tego, co tu podajesz ciężko wywnioskować, bo niby błędów nie ma...
Go to the top of the page
+Quote Post
thornag
post
Post #7





Grupa: Zarejestrowani
Postów: 504
Pomógł: 2
Dołączył: 31.03.2006
Skąd: Londyn

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


Przy wklejaniu kodu zauwazylem blad (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
  1. <?php
  2. case "item":
  3. $this->query("SELECT item_rate, item_rates FROM casts WHERE item_id = '$this->id'");
  4. $this->rankArray = mysql_fetch_array($this->result);
  5. break;
  6. if ($this->rankArray[item_rates] == 0) {
  7. $this->rate = 0;
  8. } else {
  9.  
  10. $this->rate = $this->rankArray['item_rate'] / $this->rankArray['item_rates'];
  11. }
  12. echo "2dupa";
  13. break;
  14. return $this->rate;
  15. }
  16. ?>


Wkradl mi sie break; (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

@mike_mech -> wiem co chcesz napisac... szukajcie bledow (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Tylko ze ja ich szukalem wyswietlalem wyniki itp (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) a break mi po prostu umknal (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)

Ten post edytował thornag 7.07.2006, 12:34:23
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: 15.09.2025 - 15:21