![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 37 Pomógł: 0 Dołączył: 14.12.2003 Ostrzeżenie: (0%) ![]() ![]() |
Orientuję się już co nieco w PHP a ostatnio zainteresowałem się tematem
klas przy okazji znalezienia i próby wykorzystania gotowej klasy imageresizer.class.php z www.phpclasses.org Dość prosta i fajna klasa do resizowania uploadowanych obrazków. Nie wiem czy jest sens cytowania całej klasy, zrobię to jeśli będzie konieczne. Podam tylko sposób wywołania klasy:
Moim problemem jest to, że chciałem użyć zmiennej $error występującej w fonkcji wewnątrz klasy. Zmienna ta zawiera numer błędu zwyczajnie cyfry od 0-4 symbolizujące typ błędu. Klasa zawiera funkcję, która wyświetla (echo) odpowiedni komunikat błędu w zależności od cyferki w zmiennej $error. I ładnie mi to działa ale ja po wykonaniu (wywołaniu) klasy i wyjściu z niej chciał bym wykonać stosowne akcje w zależności od wartości błędu $error. A ta zmienna nie jest dostępna już poza klasą, jedynie wewnątrz niej. Proszę o jakąś ogólną zasadę jak to można zrobić. Uzupełnienie - treść klasy: (Od siebie dodałem jedną poprawkę błędu i kilka modyfikacji w sekcji wyświetlającej informacje o obrazku. Oryginalna klasa dostępna na: www.phpclasses.org) Należy zwrócić uwagę na funkcję GetError.
Ten post edytował aniol 29.09.2008, 11:48:17 |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Przydała by się jednak ta klasa tutaj. Bez Tego tobie nie powiemy jak się do tej zmiennej dostać.
Może ma metodę getErrorNumber(); Może atrybu Error jest publiczny; Może rzuca wyjątkiem z tym numerem. edit: Przejrzałem ta klasę. Nie da rady wyciagnąć tego błędu. On jest tylko wewnętrznie wykorzystywany (przekazywany przez parametr w odpowiedniej funkcji) i tyle. Ten post edytował LBO 29.09.2008, 11:47:05 |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 272 Pomógł: 19 Dołączył: 29.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
mozesz utworzyc kolejna zmienna ktorej bedziesz przypisywac numer bledu.
nastepnie w
-------------------- Pomogłem ?? Kliknij pomógł :) || kallosz.pl
----------------------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
mozesz utworzyc kolejna zmienna ktorej bedziesz przypisywac numer bledu.
nastepnie w
Wiesz, żeby korzystać z zalet OOP ta klasa powinna być napisana przynajmniej względnie dobrze. A ponieważ nie jest - radziłbym koledze znalezienie innego narzędzia, a nawet napisanie własnego i to w PHP5. Nauczy się więcej a nie podpatruje takie badziewia. Pozdrawiam, Alan |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 37 Pomógł: 0 Dołączył: 14.12.2003 Ostrzeżenie: (0%) ![]() ![]() |
Wiesz, żeby korzystać z zalet OOP ta klasa powinna być napisana przynajmniej względnie dobrze. A ponieważ nie jest - radziłbym koledze znalezienie innego narzędzia, a nawet napisanie własnego i to w PHP5. Nauczy się więcej a nie podpatruje takie badziewia. Pozdrawiam, Alan Pomijając twoją ocenę, czy masz może inny lepszy pomysł, bo rozwiązanie kolegi którego cytowałeś nie zadziałało u mnie, nie wiem czemu. Anioł Ten post edytował aniol 29.09.2008, 13:11:46 |
|
|
![]()
Post
#6
|
|
![]() Grupa: Zarejestrowani Postów: 272 Pomógł: 19 Dołączył: 29.07.2006 Ostrzeżenie: (10%) ![]() ![]() |
Wiesz, żeby korzystać z zalet OOP ta klasa powinna być napisana przynajmniej względnie dobrze. A ponieważ nie jest - radziłbym koledze znalezienie innego narzędzia, a nawet napisanie własnego i to w PHP5. Nauczy się więcej a nie podpatruje takie badziewia. @LBO: tak wiem...Pozdrawiam, Alan @anioł: a w jaki sposób wyciągasz $error na zwenątrz? BTW: Do uploadu obrazkow oraz innych rozmaitosci stosuje http://www.verot.net/php_class_upload.htm bardzo fajna klasa Ten post edytował kallosz 29.09.2008, 13:21:30 -------------------- Pomogłem ?? Kliknij pomógł :) || kallosz.pl
----------------------------------- |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 366 Pomógł: 261 Dołączył: 23.09.2008 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
w funkcji resize czyli tam gdzie sparwdzasz i wyświetlasz błedy zamaist wywoływać funkcje możesz dać
no i później możesz się normalnie do tego odwołać i użyć :
ogólnie w tej funkcji geterror chyba lepiej dać return niż echo i później robić echo do wywoływanej funkcji ![]() Ten post edytował melkorm 29.09.2008, 13:24:15 -------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 1 415 Pomógł: 117 Dołączył: 7.09.2005 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Proszę bardzo. Zacznijmy, że z założenia nie modyfikuje się zewnetrznych klas.
Pozdrawiam, Alan edit: poprawiłem kilka błędów. Ten post edytował LBO 29.09.2008, 13:26:31 |
|
|
![]()
Post
#9
|
|
![]() Grupa: Zarejestrowani Postów: 793 Pomógł: 32 Dołączył: 23.11.2006 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Jak błąd to błąd, czyli wyjątek, różny kod lub typ (ale dziedziczące z jednej dla danej klasy).
Zresztą to jest tak fatalnie napisane... powtarzanie tego samego kodu w paru miejscach, błędne nazewnictwo... -------------------- Algorytmy w PHP, czy ktoś o tym słyszał?
Dlaczego tak mało kobiet programuje? ponieważ nie zajmują się głupotami. |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 37 Pomógł: 0 Dołączył: 14.12.2003 Ostrzeżenie: (0%) ![]() ![]() |
BTW:
Do uploadu obrazkow oraz innych rozmaitosci stosuje http://www.verot.net/php_class_upload.htm bardzo fajna klasa [/quote] Po zapoznaniu się z w/w adresem, sprowadzony na ziemię, nie chcę już więcej oglądać tego czym rozpocząłem ten wątek. www.verot.net/php_class_upload.htm to poprostu doskonałe kompleksowe rozwiązanie. Tak więc moje dotychczasowe zmagania straciły sens. Zamykam wątek. Dzięku "kallosz". Ten post edytował aniol 30.09.2008, 09:40:18 |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 31.07.2025 - 08:02 |