Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

4 Stron V  < 1 2 3 4 >  
Reply to this topicStart new topic
> Spawn Framework, http://spawnframework.com/
Spawnm
post
Post #21





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Brakuje ci spacji i enterów ? A ja myślałem że za dużo zawsze daję (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
Crozin
post
Post #22





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Cytat
Brakowało mi prostoty struktury fw
Twój FW nie jest prosty... jest prymitywny. Niestety ale przeglądając jego źródła natrafiłem na dziesiątki miejsc, gdzie będzie on ograniczać i utrudniać życie, a nie pomagać. Dodatkowo jest zaprojektowany na przekór wszystkim ideą OOP (patrz dziesiątki statycznych metod, które być nie powinny) co zemści się w momencie, gdy będziesz chciał rozszerzyć jakiś "moduł".
Cytat
brakowało mi fw do małych projektów
A tak konkretnie to w czym przeszkadza użycie jakiegoś Symfony czy Zenda w małych projektach. Co jest konkretnie złego w tym, że sam FW będzie 5 razy bardziej obszerny niż aplikacja?
Cytat
fw który by nie zajmował kilka MB
Ponownie - podaj jakiś konkretny argument przeciwko 10 megowemu FW. Jego API nauczysz się w 1-3 dni. Momentami będziesz musiał podejrzeć bezpośrednio źródła, ale zajmie to nieporównywanie mniej czasu niż pisanie czegoś własnego (szczególnie, jeżeli miałoby być na poziomie).
Cytat
Widząc w jakim kierunku rozwija się np. kohana w której pracowałem uznałem że ja w tym czymś pracować dalej nie będe.
No to nie pracuj. Mi również nie podoba się ten FW (jednak jestem zmuszony do pracy przy jego wykorzystaniu w jednym projekcie) - ale całe szczęście PHP oferuje kilka innych wartych uwagi FW.

Cytat
jak masz 20 tys plikow w projekcie to bedziesz kazdy z osobna otwieral i uruchamial
Eee... takie Eclipse np. bezpośrednio w drzewie projektu pokazuje, w których plikach są błędy (NB, ZS pewnie też). (IMG:style_emoticons/default/winksmiley.jpg)

Cytat
to co wyżej uważasz za śmietnik? Przesadzasz
Nie przesadza. (IMG:style_emoticons/default/winksmiley.jpg)

Cytat
Może nie byle szybciej ale na kolanie chwilami tak
To zły projekt sobie wziąłeś na "wzór".
Go to the top of the page
+Quote Post
-=Peter=-
post
Post #23





Grupa: Zarejestrowani
Postów: 304
Pomógł: 51
Dołączył: 4.02.2005
Skąd: Kraków

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


Cytat
pozatym z komercyjnego punktu widzenia, nie moge wykorzystac twojego kodu na powaznie, bo nie ma on zadnej gwarancji dzialania, a dobre testy sa taka wlasnie gwarancja

Zapomniałeś słowa które pogrubiłem. To że się napisze kilka testów, które powiedzmy pokrywają 40% kodu, to nie znaczy że są jakąkolwiek gwarancją (IMG:style_emoticons/default/winksmiley.jpg) Ale ogólnie z tym stwierdzeniem się mogę zgodzić.

Jeśli chodzi o sam framework, to nie będę mocno krytykował, jednak stwierdzę że pośpieszyłeś się z jego publikacją.

* Już kilka osób zwróciło Ci uwagę np. na metodę sf_view::factory(). To nie jest implementacja wzorca factory, abstract factory, ani factory method, więc skąd taka nazwa tej metody? po co ona jest? (IMG:style_emoticons/default/snitch.gif)

* Masz za duże zamiłowanie do metod statycznych, zdecydowanie za bardzo klasy pisane przez Ciebie przypominają zlepek funkcji. Równie dobrze ponad połowa frameworku mogła by być napisana samymi funkcjami w poszczególnych przestrzeniach nazw (czyli przykładowo cache\get). Pamiętaj że istota oop to nie procedury, a dane i operacje na nich.

* Zdecydowanie zbyt dużo singletonów, najlepiej jakby w ogóle tego tworu nie było.

* Styl kodowania (nie mówię tutaj o formatowaniu, ale o ogólnym sposobie pisania klas, metod itp.) pozostawia wiele do życzenia.
Go to the top of the page
+Quote Post
Spawnm
post
Post #24





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




1/3 to static z tego co widzę, ale macie rację bo i ja się zastanawiałem czy by z niektórych metod nie wywalić static.

//Styl kodowania (nie mówię tutaj o formatowaniu, ale o ogólnym sposobie pisania klas, metod itp.) pozostawia wiele do życzenia.
chodzi ci o nazewnictwo czy spacje/entery jak skowronowi ?

Cytat
* Już kilka osób zwróciło Ci uwagę np. na metodę sf_view::factory(). To nie jest implementacja wzorca factory, abstract factory, ani factory method, więc skąd taka nazwa tej metody? po co ona jest? snitch.gif


No w sumie mogłem tam dać load czy coś w tym stylu.
A wykorzystuje to tak:
  1. $view=sf_view('home');
  2. $view->title='aaa';
  3. $view->main=sf_view::factory('news')->helper('form')->render();
  4. $view->render();

Może i głupie może i nie (IMG:style_emoticons/default/tongue.gif)
Powód edycji: [Spawnm]:
Go to the top of the page
+Quote Post
Quantum
post
Post #25





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


Kod rzeczywiście mało czytelny, przynajmniej dla mnie. To formatowanie PEAR, trafiłem ? (IMG:style_emoticons/default/biggrin.gif) Gdyby przepuścić pliki przez jakiś "upiększacz" można było by poczytać, teraz dość ciężko analizować kod. A teraz tak pobieżnie, widać, że dużo pracy w to włożyłeś. Sam może z rok temu dziergałem kod własnego - niestety do niczego to nie doprowadziło. Straciłem zapał i stwierdziłem, że lepiej skorzystać z innego framework-a, którego nie tworzy jedna osoba. Po jakimś czasie napewno wyszło by wiele tzw. "wąskich gardeł", które uniemożliwiały lub utrudniałyby dalszy rozwój aplikacji. Wzorowałeś się na Kohanie ? Co do struktury katalogów, rzeczywiście konfiguracja, logi, cache etc., już należą do aplikacji. W katalogu bibliotek nic poza ich kodem, sterownikami nie powinno być. W ostateczności konfiguracja domyślna, lecz nadpisywalna przez tę w folderze aplikacji. Kod ocenię jak będę miał trochę więcej czasu (IMG:style_emoticons/default/winksmiley.jpg)

BTW. http://beta.phpformatter.com.

Ten post edytował Quantum 8.07.2010, 22:15:34
Go to the top of the page
+Quote Post
-=Peter=-
post
Post #26





Grupa: Zarejestrowani
Postów: 304
Pomógł: 51
Dołączył: 4.02.2005
Skąd: Kraków

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


Jeśli chodzi o styl kodowania to co mi się rzuciło w oczy:
- niespójne komentarze, raz przed metodą w stylu phpDoc, raz zwykłe jedno linijkowe
- niechlujstwo i niekonsekwencja - np. raz przed przecinkiem jest spacja, raz jej nie ma
- kod ciężko się czyta, próbujesz ratować jego czytelność miejscami gęsto osadzonymi jedno linijkowymi komentarzami, co jest właśnie oznaką tego że kod nie jest czytelny (IMG:style_emoticons/default/winksmiley.jpg) Lepiej zamiast pisać takich komentarzy zmienić nieco kod.
- trochę powtórzeń kodu
- niektóre metody są za duże, powinny być rozbite na kilka mniejszych (metody za duże rozpoznasz po tych komentarzach które zajmują jedną liniję)

Aby nie być gołosłownym, przykład (IMG:style_emoticons/default/winksmiley.jpg)

Oryginalny kod:
  1. class sf_orm {
  2. public function update($values=array(), $where=array() , $sep=' AND '){
  3. $where=(is_array($where))? $where : array($this->_tableKey=>$where);
  4. return $this->_db->update($this->_tableName , $values,$where , $sep );
  5. }
  6.  
  7. public function updateRequest(array $req, $where=array() , $sep=' AND '){
  8. //valid values
  9. if($this->_structure){
  10. foreach($req as $key => $val){
  11. if(!in_array($key,$this->_structure)){
  12. unset($req[$key]);
  13. }
  14. }
  15. }
  16. //create where
  17. $where=(is_array($where))? $where : array($this->_tableKey=>$where);
  18. //execute
  19. return $this->_db->update($this->_tableName,$req, $where, $sep);
  20. }
  21. }


Lekko zrefaktorowany:
  1. class sf_orm {
  2. public function update($values=array(), $where=array() , $sep=' AND '){
  3. $where = $this->createWhere($where);
  4. return $this->doUpdate($values, $where, $sep);
  5. }
  6.  
  7. private function createWhere($where){
  8. if(!is_array($where)){
  9. $where = array($this->_tableKey=>$where);
  10. }
  11.  
  12. return $where;
  13. }
  14.  
  15. private function doUpdate($values, $where, $sep){
  16. return $this->_db->update($this->_tableName, $values, $where, $sep);
  17. }
  18.  
  19. public function updateRequest(array $req, $where=array() , $sep=' AND '){
  20. $values = $this->deleteUnusedValues($req);
  21.  
  22. return $this->update($values, $where, $sep);
  23. }
  24.  
  25. private function deleteUnusedValues(array $values){
  26. if($this->_structure){
  27. $values = array_intersect_key($values, $this->_structure);
  28. }
  29.  
  30. return $values;
  31. }
  32. }


Ten post edytował -=Peter=- 8.07.2010, 22:21:54
Go to the top of the page
+Quote Post
Zyx
post
Post #27





Grupa: Zarejestrowani
Postów: 952
Pomógł: 154
Dołączył: 20.01.2007
Skąd: /dev/oracle

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


Ja się przyczepię do wynajdowania koła na nowo. Nie chodzi mi o framework, jako taki, ale o zastosowane w nim rozwiązania. Co skłoniło Cię do wyprodukowania pliku sf_date.php, kiedy PHP już od co najmniej kilku lat ma wbudowane, prekompilowane i obiektowe rozszerzenie do zarządzania datami, które na pewno jest bardziej dokładne, niż Twoje?

http://docs.php.net/manual/pl/class.datetime.php

Patrzymy do sf_math, a tam:

Kod
public static function hex2dec($number){


http://docs.php.net/manual/pl/function.hexdec.php

Lub przekombinowane algorytmy. sf_math::hex2rgb() - jakieś skomplikowane operacje na tekście tam robisz, a taka konwersja to de facto zrzutowanie tekstu na liczbę całkowitą, przepuszczenie jej przez trzy maski bitowe i zrobienie przesunięć w prawo.
Go to the top of the page
+Quote Post
Spawnm
post
Post #28





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Hey,
takie klasy jak math czy date wpadły do frameworka bo swego czasu napisałem funkcje które tam obecnie się znalazły w formie metod i uznałem że skoro mi się pewnie kiedyś przydały to może i teraz komuś się przydadzą (IMG:style_emoticons/default/smile.gif)

Co do config debug itp w sf, możecie je dać gdzie wam się podoba, tylko w index.php zmodyfikujcie define().

@Quantum -> ten programik narzuca stosowanie
  1. nazwa()
  2. {
  3. //coś
  4. }

I zbyt wiele w kodzie nie zmienia ... no wcięcia mi zmniejszył . Nie powiedział bym aby kod z rezultatu był czytelniejszy , przynajmniej nie dla mnie .

'Wzorowałeś się na Kohanie ?'
W pewnym stopniu tak, do zenda też mi się zaglądało a i po dokumentacjach innych frameworków przeleciałem palcem zobaczyć jak oni różne rzeczy rozwiązali .
Go to the top of the page
+Quote Post
cojack
post
Post #29





Grupa: Zarejestrowani
Postów: 898
Pomógł: 80
Dołączył: 31.05.2008

Ostrzeżenie: (20%)
X----


Czepiacie się, wszystko idzie dopracować, jak jemu działa i mu odpowiada to jest jego projekt, można błędy powytykać ale po co mieszać od razu gościa z błotem? Nikt Wam nie każe używać jego projektu, mi by nawet na tym nie zależało by ktoś używał mojego jak zrobię ( a zrobię release ), a chętnie po wysłuchuje zrypek ;]

Wcale nie jest prymitywny, tylko prosty, czasami człowiek na prawdę nie wie gdzie jaką metodę wrzucić, nie każdy jest po studiach z inżynierią oprogramowania, gdzie takie rzeczy po prostu wałkują w Ciebie.
Go to the top of the page
+Quote Post
phpion
post
Post #30





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




A mi się podoba! Prosty, mały i zapewne do takich celów został stworzony. Może nie jest idealny, ale jeśli spełnia swoją rolę to w czym rzecz? Do każdego frameworka (nawet tych klasy enterprise) można się doczepić.

Odnośnie pytania dlaczego nie używać np. ZF dla małych projektów: wydaje mi się, że narzędzia powinno dobierać się pod konkretne wymagania i potrzeby, a nie z pały łubu-dubu. ZF dla strony domowej z formularzem kontaktowym to moim zdaniem przerost formy nad treścią.

PS: skrót sf faktycznie jest mylący, również w pierwszej kolejności skojarzyłem go z symfony i myślałem, że to jakiś Twój fork tego frameworka (IMG:style_emoticons/default/winksmiley.jpg)
Go to the top of the page
+Quote Post
wookieb
post
Post #31





Grupa: Moderatorzy
Postów: 8 989
Pomógł: 1550
Dołączył: 8.08.2008
Skąd: Słupsk/Gdańsk




A ja bym prosił o jakieś dane dotyczące zużycia pamięci, czas wykonywania dla konkretnych przykładów stron (co tam jest itd)
Go to the top of the page
+Quote Post
Quantum
post
Post #32





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


@up, popieram, uwzględnij też manipulacje danymi na jakimś większym zbiorze przez ORM (IMG:style_emoticons/default/smile.gif)

w kodzie często używasz ternary operator ze zbędnymi nawiasami np:

  1. /**
  2. *get cookie param
  3. *
  4. *@param - string - param name
  5. *@param - if cookie with self param not exists return this param
  6. *@return - string
  7. */
  8. public static function get($name,$or=null){
  9. return (isset($_COOKIE[$name]))? $_COOKIE[$name] : $or;
  10. }


wystarczy

isset($_COOKIE[$name])? $_COOKIE[$name] : $or;

ale to drobnostka. Sprawdź sobie formatowanie Allman BSD, jest dość podobne do tego, które zastosowałeś. Przykłady:

  1.  
  2. $tablica = array(
  3. 'x' => 17,
  4. 'y' => 29
  5. );
  6.  
  7. $bool = false;
  8.  
  9. if (warunek)
  10. {
  11. //kod
  12. }
  13.  
  14. switch (warunek)
  15. {
  16. case 'a':
  17.  
  18. //kod
  19.  
  20. break;
  21. }
  22.  
  23. class example {
  24.  
  25. public function a()
  26. {
  27. //kod
  28. }
  29.  
  30. }
  31.  


A tak na boku, zamierzasz zaimplementować url forwarding ? brakowało tego w Kohanie.
Go to the top of the page
+Quote Post
Spawnm
post
Post #33





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Cytat
Może nie jest idealny, ale jeśli spełnia swoją rolę to w czym rzecz?

Jest to pierwsze publiczne wydanie , jak byście powiedzieli że jest idealny to byś się mocno zdziwił.

Co do skrótu sf - symfony :
w plikach symfony stosuje nazwy klas w formie sfNazwaKlasy , ja ze względu na loader klas stosuję sf_nazwa_klasy więc mylić się aż tak nie powinno.

@Wookieb - w wolnej chwili porobię i dam na forum,blogu bo i tak się do tego przymierzałem.

//-----

Cytat
A tak na boku, zamierzasz zaimplementować url forwarding ?

są chyba 2-3 metody do przekierowań , opisz czego dokładnie oczekujesz.

Co do ternarów i niby zbędnego nawiasu - pomaga mi , kod dla mnie staje się czytelniejszy.

Cytat
Sprawdź sobie formatowanie Allman BSD

Nawet nie wiesz jak mnie wkurza gdy widzę że ktoś pisze w ten sposób .

Powód edycji: [Spawnm]:
Go to the top of the page
+Quote Post
erix
post
Post #34





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Co do skrótu sf - symfony :
w plikach symfony stosuje nazwy klas w formie sfNazwaKlasy , ja ze względu na loader klas stosuję sf_nazwa_klasy więc mylić się aż tak nie powinno.

Ale to nie zmienia faktu, że pierwsze skojarzenie = symfony. (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
SHiP
post
Post #35





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

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


Znalazłem czas. Przysiadłem i oto kilka rzeczy które mi się nie podobają (IMG:style_emoticons/default/winksmiley.jpg) .

1. Plik file.php metoda - mimeType() - kod, który tam masz jest żywcem z php.net (IMG:style_emoticons/default/winksmiley.jpg) i nie chodzi o to, że branie stamtąd to zło. Po prostu wiele osób, które się tam wypowiada nie orientuje się w temacie. Analogicznie tutaj - do sprawdzanie typu pliku używać się powinno http://www.php.net/manual/en/book.fileinfo.php Określanie mime po rozszerzeniu to jak picie płynu od obcej osoby tylko dlatego, że jest napis woda na butelce...

2. form.php to dla mnie jakaś pomyłka. Może to kwestia przyzwyczajenia ale po prostu nie korzystam z takich generatorów htmla. Jeśli natomiast chcesz to zostawic to popracuj nad poprawnością np.
  1. public function checkbox($name,$value,$check=false,$css=''){
  2. $check=($check==false)? '' : ' checked ';
  3. return '<input type="checkbox" name="'.$name.'" value="'.$value.'" '.$css.' '.$check.' />';
  4. }

Powinno być raczeh checked="checked" a $css powinno się nazywać $others lub podobnie bo widzę, że można w tym parametrze wstawić nie tylko css. W końcu czasem potrzeba title, rel lub disabled. W input type="text" nie masz readonly itd. Do dopracowania jest ta klasa

3. image.php - jeżeli nie przefiltrujesz ręcznie nazwy pliku to klasa będzie dziurawa. Nie uzywaj getimagesize() tylko exif_imagetype()
4. jquery.php - ?
5. Brakuje mi klasy do tłumaczeń

Ogólnie widzę, że się nieźle napracowałeś. Sporo kodu jest w porządku choć osobiście nie będę korzystał z dwóch powodów:
1. męcząca dla mnie składnia(np to że muszę za każdym razem ręcznie tworzyć widok lub model)
2. Mam swój, lepszy haha (IMG:style_emoticons/default/biggrin.gif)

Ten post edytował SHiP 9.07.2010, 09:57:30
Go to the top of the page
+Quote Post
Quantum
post
Post #36





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


Cytat(Spawnm)
Cytat

Sprawdź sobie formatowanie Allman BSD

Nawet nie wiesz jak mnie wkurza gdy widzę że ktoś pisze w ten sposób .


wyluzuj.. to tylko sugestia (IMG:style_emoticons/default/winksmiley.jpg)

Jeśli chodzi o url forwarding, to miałem na myśli przekierowanie na inny kontroler/akcje bez zmian w pasku adresowym. Na przykład:

wchodzisz do strefy płatnej: http://przyklad.pl/artykuly/166/tytul-arta

zamiast artykułu widzisz stronę z informacją o dokonaniu płatności, bez przekierowania na np. adres: http://przyklad.pl/abonament choć będzie to w rzeczywistości ten sam kontroler.

Ten post edytował Quantum 9.07.2010, 10:01:25
Go to the top of the page
+Quote Post
Spawnm
post
Post #37





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Zobacz czy sf_controller::getAction spełnia twoje oczekiwania

@SHiP -> masz lepszy? Pokaż. (IMG:style_emoticons/default/smile.gif)

Cytat
1. męcząca dla mnie składnia(np to że muszę za każdym razem ręcznie tworzyć widok lub model)

do widoku masz mini ułatwienie w formie sf_template , opisz dokładniej w czym problem.
Powód edycji: [Spawnm]:
Go to the top of the page
+Quote Post
Quantum
post
Post #38





Grupa: Zarejestrowani
Postów: 450
Pomógł: 84
Dołączył: 27.11.2008
Skąd: Warszawa

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


Cytat
Zobacz czy sf_controller::getAction spełnia twoje oczekiwania


HMVC.

  1. public function indexAction(){
  2. $view=new sf_view('spawn');
  3.  
  4. // forwarding
  5. $controller = new sf_controller;
  6. echo $controller->getAction('spawn', 'info');
  7.  
  8. $view->render(false);
  9. }
  10.  
  11. public function infoAction(){
  12. return 'info';
  13. }


po zmianie na echo w infoAction (zachowanie $view->render(true)) nie ma sensu już wywoływać echo $controller->getAction, trzeba to poprawić, albo na ob_* - nie zbyt elegancko, albo w klasie widoku udostępnić metodzie getAction manipulację zwracaniem/wyświetlaniem wyniku.

  1. /**
  2. *use sf_html::pre to write $val
  3. *
  4. *@param - array - param to write
  5. */
  6. public function pre($val){
  7. sf_html::pre($val);
  8. }


czemu ma służyć to opakowywanie metod (sf_controller::pre()) ?

a tak ogólnie, nawet nieźle Ci to wyszło (IMG:style_emoticons/default/smile.gif)

Ten post edytował Quantum 9.07.2010, 10:37:52
Go to the top of the page
+Quote Post
Spawnm
post
Post #39





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Cytat
czemu ma służyć to opakowywanie metod ?

mojemu lenistwu przy testowaniu wyników w trakcie pisania sf , wygodniej mi było w kontrolerze pisać $this->pre($result);

Cytat
a tak ogólnie, nawet nieźle Ci to wyszło smile.gif

A dziękuje (IMG:style_emoticons/default/smile.gif)


udostępniłem 1.0.6 bez błędów (przynajmniej bez większości błędów (IMG:style_emoticons/default/tongue.gif) )
Powód edycji: [Spawnm]:
Go to the top of the page
+Quote Post
Crozin
post
Post #40





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Cytat
mojemu lenistwu przy testowaniu wyników w trakcie pisania sf , wygodniej mi było w kontrolerze pisać $this->pre($result);
To weź sobie w swoim edytorze ustaw szablon, by po wpisaniu nie wiem... "pre" wywalało "sf_html::pre" czy jak to tam masz, a nie śmieć w "finalnym wydaniu"

PS. Jak chcesz udostępniać to jako OS, to wypadałoby udostępnić jakieś narzędzia do zgłaszania błędów, może publiczne repozytorium (polecam GITa) - nieco się pospieszyłeś z publikacją.

Ten post edytował Crozin 9.07.2010, 10:50:09
Go to the top of the page
+Quote Post

4 Stron V  < 1 2 3 4 >
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: 10.06.2026 - 06:57