Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Nie działa return w funkcji.
Kreton
post 14.07.2006, 14:50:49
Post #1





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


  1. <?php
  2.  
  3. class Oceny
  4. {
  5.  
  6. function nazwy_kolumn()
  7. {
  8. $sql = mysql_query("SELECT * FROM `oceny` ");
  9. $num_fields = mysql_num_fields($sql);
  10. $kolumny = array();
  11. $i=0;
  12. while($i <= $num_fields - 1 )
  13. {
  14. $kolumny[] = mysql_field_name($sql, $i);
  15. $i++;
  16. }
  17. print_r($kolumny);
  18.  
  19. return $kolumny;
  20.  
  21. }
  22.  
  23.  
  24. }
  25.  
  26. ?>


Troszke kodu smile.gif. Problem polega na tym ze w pliku index.php includuje sobie pieknie klasę poprzez
Kod
include ('classes/oceny.class');

A potem chcę wyświetlić zawartość zmiennej $kolumny : dla przyskaldu 3 elementu.
Kod
print $kolumny[2];

Jednak nic nie zostaje wyświetlone. A co zawartości tablicy $kolumny jestem pewny ze jest dobra to przecież print_r() pięknie to pokazuje. Oczywiście wczesniej zostaje utworzony obiekt $obj = &new Oceny.

W jaki sposób wyciagnąć teraz tą tabilce ? Co się dzieje z $kolumny ?

Ten post edytował Kreton 15.07.2006, 12:30:20
Go to the top of the page
+Quote Post
ARJ
post 14.07.2006, 14:52:40
Post #2





Grupa: Zarejestrowani
Postów: 453
Pomógł: 22
Dołączył: 20.09.2004
Skąd: Kraków - NH -

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


a czy to przypadkiem nie tworzy się tablica 2 wymiarowa? spróbuj $kolumny[0][0]


--------------------
Warsztat: Windows 7 Pro 64bit | Apache 2.2 | PHP 5.2 | MySQL 5.0 | PHPmyadmin 2.6.4
Go to the top of the page
+Quote Post
Athlan
post 14.07.2006, 14:52:41
Post #3





Grupa: Developerzy
Postów: 823
Pomógł: 12
Dołączył: 18.12.2005

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


a nie czasem:

return print_r($kolumny);

:?:


--------------------
Portfolio: Vgroup.pl | athlan.pl | Test.php.pl - sprawdź się z wiedzy o PHP i ułóż własne pytania!
Pomogłem? Kliknij pod postem.
Go to the top of the page
+Quote Post
Kreton
post 14.07.2006, 15:48:17
Post #4





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


@Athlan: Co takie coś by dało ? Moim zdaniem funkcja pomoze zwracać jedynie wartoścą logiczna ( true, false ) Ale coś co jest albo zmienną albo tablicą albo obiektem

@ARJ Nie nie zwraca tablicy 2 wymiarowej. Jezeli to pomoże to struktura tablicy $kolumny wygląda tak :
Kod
Array
(
    [0] => ID
    [1] => Imie
    [2] => Nazwisko
    [3] => Jezyk polski
    [4] => Matematyka
    [5] => WOK
    [6] => Historia
    [7] => Religia
)


Ten post edytował Kreton 14.07.2006, 15:57:41
Go to the top of the page
+Quote Post
ARJ
post 14.07.2006, 15:59:55
Post #5





Grupa: Zarejestrowani
Postów: 453
Pomógł: 22
Dołączył: 20.09.2004
Skąd: Kraków - NH -

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


coś dzisiaj ze mną nie bardzo dry.gif
spróbuj tak:
  1. <?
  2. $oceny = new Oceny;
  3. $kolumny = nazwy_kolumn();
  4. print_r($kolumny);
  5. ?>


--------------------
Warsztat: Windows 7 Pro 64bit | Apache 2.2 | PHP 5.2 | MySQL 5.0 | PHPmyadmin 2.6.4
Go to the top of the page
+Quote Post
Ludvik
post 14.07.2006, 17:29:32
Post #6





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


Jak print_r wypisuje dobrze, to wywołaj kod tak i powinno być po sprawie...
  1. <?php
  2. $o = new Oceny();
  3. $kolumny = $o->nazwy_kolumn();
  4. ?>


--------------------
Go to the top of the page
+Quote Post
mike
post 14.07.2006, 19:13:30
Post #7





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

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


Cytat(Kreton @ 14.07.2006, 20:06 ) *
Nie stety nie działa ...

A sprawdź czy działa edycja tematu w wątku tongue.gif
Jak już stwierdzisz że działa to go popraw, bo nie jest zgodny z Zasadami pisania na forum Przedszkole.
Go to the top of the page
+Quote Post
Kreton
post 14.07.2006, 19:20:03
Post #8





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


Mam nadzieje że ten pasuje. Faktycznie działa edycja tematu tongue.gif ale moja wspaniała funkcja nie biggrin.gif
Go to the top of the page
+Quote Post
Ludvik
post 14.07.2006, 19:56:57
Post #9





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

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


To może pokażesz nam swój kod... Bo po tym co napisałeś, to nie da się nic stwierdzić. Pokaż zawartość zmiennej $kolumny tuż przed zwróceniem jej, potem zawartość zmiennej, która pobierze tablicę z funkcji.


--------------------
Go to the top of the page
+Quote Post
-Gość_Kreton_*-
post 15.07.2006, 11:25:24
Post #10





Goście







Przed return robię :
  1. <?php
  2. print $kolumny[2];
  3. ?>

No i dostaję: Nazwisko.

Potem tworzę obiekt:
  1. <?php
  2. $ocn = new Oceny;
  3. $ocn->nazwy_kolumn();
  4. //I tutaj zakładam ze funkcja nazwy_kolumn() zwraca mi tablicę $kolumny
  5. print $kolumny[2];
  6. // Pwonno wyświetlić Nazwisko ale ... tego nie robi
  7. ?>
Go to the top of the page
+Quote Post
mike
post 15.07.2006, 11:32:31
Post #11





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

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


  1. <?php
  2. $ocn = new Oceny;
  3. $kolumny = $ocn->nazwy_kolumn(); // <- wypada do czegoś przypisać wynik działania funkcji
  4. //I tutaj zakładam ze funkcja nazwy_kolumn() zwraca mi tablicę $kolumny
  5. print $kolumny[2];
  6. ?>


Zapraszam do podstaw: Podręcznik php :: Funkcje :: Zwracane wartości

P.S.
Przeczytaj to: Tematyka i zasady panujące na forum Przedszkole i popraw temat wątku a dokładnie dopisz do niego wymagane rzeczy inaczej zamknę.
Go to the top of the page
+Quote Post
Kreton
post 15.07.2006, 12:34:14
Post #12





Grupa: Zarejestrowani
Postów: 345
Pomógł: 3
Dołączył: 20.02.2005

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


Ok, działa smile.gif Dzięki smile.gif

Ten post edytował Kreton 15.07.2006, 12:36:59
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 03:41