![]() ![]() |
Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
Witam, ostatnio się uczyłem klas, w miarę ogarniam i teraz potrzebuje pomocy, ponieważ nie mogę dojść do tego, jak tworzyć zmienne automatycznie, abym mógł je pobrać.
mam np.
mam nadzieje, że zrozumiecie o co chodzi i z góry dziękuję za pomoc, lub chociaż próbę pomocy! |
|
|
|
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 690 Pomógł: 92 Dołączył: 6.02.2011 Ostrzeżenie: (0%)
|
Eee, chyba wiem.
Aby odnieść się do klasy w niej samej, użyj $this, ale powie ci to pierwszy lepszy kurs |
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
Eee, chyba wiem. Aby odnieść się do klasy w niej samej, użyj $this, ale powie ci to pierwszy lepszy kurs probowalem
ale potem nie mogłem pobrać $cos->pies... |
|
|
|
Post
#4
|
|
|
Grupa: Moderatorzy Postów: 4 069 Pomógł: 497 Dołączył: 11.05.2007 Skąd: Warszawa |
Daj $this->{$index} = $wartosc;
Btw. pomysł beznadziejny. |
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
Daj $this->{$index} = $wartosc; Btw. pomysł beznadziejny. dzięki działa. btw. czemu beznadziejny? to co napisałem tylko przykład, funkcja wyciąga dane z bazy danych i używam tego tak:
mi się wydaje, że to ułatwia (IMG:style_emoticons/default/smile.gif) a jeszcze jedno pytanie teraz mam tak:
a chciałbym np. ułatwić sobię tym sposobem:
co muszę zrobić? bo wyskakuje, non-object... Ten post edytował Memberek 1.08.2011, 18:50:12 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%)
|
$sql jest globalne?
daj:
Ten post edytował buliq 1.08.2011, 18:53:13 |
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
#up
mam wyżej $sql = new SQL; ale to nie jest odpowiedzią na moje pytanie, gdyż to akurat działa bez zarzutów, w 4 poście zadałem kolejne pytanie (IMG:style_emoticons/default/tongue.gif) Ten post edytował Memberek 1.08.2011, 18:54:32 |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%)
|
daj error_reporting(E_ALL); pokaże coś tam że nie zdefiniowałeś $sql,
$sql zdefiniowane jest w danej metodzie? |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
tu jest moja klasa Ten post edytował Memberek 1.08.2011, 19:04:13 |
|
|
|
Post
#10
|
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%)
|
Nie zrozumiałeś mojego przesłania. W metodzie loadPlayer nie masz dostępu do zmiennej $sql ponieważ jej nie zdefiniowałeś. Nie wątpię iż zdefiniowałeś ją wyżej przed wywołaniem metody jednak metoda nie ma dostępu do zmiennej z przypisaną klasą. Błąd non-object informuje ze chcesz użyć zmiennej jako obiektu która de facto obiektem nie jest. Daj global $sql; w metodzie loadPlayer aby miała ona dostęp do obsługi bazy danych. Lub jeżeli nie będzie działać ustaw $sql jako $this->sql - będzie dostęp w całej klasie.
|
|
|
|
Post
#11
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
dobrze, wiem, ale to co napisałem to przykład i pisałem go podczas pisania postu, uwierz, że mam w moim pliku.
chodzi mi o to, że chce teraz zrobić tak: $sql->query("TUTAJ ZAPYTANIE DO SQL")->fetch(); i tutaj z fetch() się pojawia non-object. (IMG:style_emoticons/default/smile.gif) |
|
|
|
Post
#12
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
Przeciez query() zwraca wynik mysql_query czyli resource a to jest dalekie od Twojego obiektu. Zastanów się chwilę co query() ma zwracac by było Twoim obiektem (IMG:style_emoticons/default/smile.gif)
|
|
|
|
Post
#13
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
|
|
|
|
Post
#14
|
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%)
|
Ok. Teraz jasne.
zrób tak:
zamień na:
Oczywiście to przykład. Powinieneś w ten sposób przerobić każdą metodę tej klasy który pracuje na danchh z mysql w celu tworzenia takich łańcuchów. Chodzi o to że $sql->query gdzie $sql jest obiektem. metoda query musi zwrócić obiekt $sql aby można było wykonać metodę tej klasy. Zwracało non-object ponieważ $sql->query zwracało resource z zapytania. Ten post edytował buliq 1.08.2011, 19:17:34 |
|
|
|
Post
#15
|
|
|
Grupa: Moderatorzy Postów: 36 561 Pomógł: 6315 Dołączył: 27.12.2004 |
hmm.... nie (IMG:style_emoticons/default/wink.gif)
po co new? Po co tworzyc nowy obiekt? Zwracaj ten co już jest. A co w obiekcie jest Twoim obiektem? Hm? i buliq zepsuł myślenie :/ |
|
|
|
Post
#16
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 1.08.2011 Ostrzeżenie: (0%)
|
dzięki Buliq, wszyscy macie +!
Ten post edytował Memberek 1.08.2011, 19:18:11 |
|
|
|
Post
#17
|
|
|
Grupa: Zarejestrowani Postów: 559 Pomógł: 93 Dołączył: 4.03.2008 Skąd: Olsztyn Ostrzeżenie: (0%)
|
|
|
|
|
![]() ![]() |
|
Aktualny czas: 24.12.2025 - 16:53 |