trzy komputery jedna domena

Linux, ogólnie, technicznie Komentarze (5) »

Dzisiaj pokażę w jaki sposób skonfigurowałem moją domenę do działania z trzema fizycznymi komputerami. Było mi to potrzebne do uruchomienia hostingu swoich .NETowych projektów. Ale najpierw pokażę jaki jest cel a potem sposób dojścia.
schemat domen
Czytaj dalej »

ASP .NET MVC i Http.RenderAction

.NET, Studia, technicznie Komentarze (0) »

Kolejny bład napotkany przy pracach nad moją małą .NETową aplikacją webową:

‘System.Web.Mvc.HtmlHelper’ does not contain a definition for ‘RenderAction’

Jak się okazało zainstalowanie framework’a to nie wszystko. Należy jeszcze ściągnć i zainstalować dodatkowe fjuczery od Microsoftu. ;] Jest to biblioteka: Microsoft.Web.Mvc.dll Czytaj dalej »

NetBeans i File Connection optional package

Bez kategorii Komentarze (0) »

Witam dziś pół dnia walczyłem aby mi się wykonała następująa komenda:
import javax.microedition.io.file.*;
NetBeans cały czas zwracał komunikat: “package javax.microedition.io.file does not exist” Powodem takiego stanu rzeczy było nie dołączenie pakietu “File Connection and PIM Optional Package 1.0″ do projektu. Niestety takiego pakietu nie było na liście pakietów opcjonalnych w netbeans 6.7.1
Czytaj dalej »

Image.CreateImage & misunderstanding

Bez kategorii Komentarze (0) »

Dokładnie chodzi o następujące przeciążenie metody:
createImage(byte[] imageData, int imageOffset, int imageLength)
Otóż w dokumentacji stoi:

The imageoffset and imagelength parameters specify a range of data within the imageData byte array. The imageOffset parameter specifies the offset into the array of the first data byte to be used. It must therefore lie within the range [0..(imageData.length-1)]. The imageLength parameter specifies the number of data bytes to be used. It must be a positive integer and it must not cause the range to extend beyond the end of the array. That is, it must be true that imageOffset + imageLength < imageData.length.

Z czego wprost wynika że imageLength = imageData.length-1 natomiast powinno być imageLength = imageData.length łopatologicznie: jeżeli mamy byteArray o długości 10 w tablicy [0...9] to wywołujemy metodę tak:
Image.createImage(byteArray, 0, 10);
a nie tak jak to wynika z dokumentacji:
Image.createImage(byteArray, 0, 9);

Język wyjątków w ASP.NET

.NET, Studia, technicznie Komentarze (0) »

Od jakiegoś czasu pracuję nad aplikacjami webowymi tworzonymi w ASP .NET. Platforma ta posiada taki “fajny” feature, który generuje wyjątki w języku strony: UICulture language. Chodzi o wyjątki generowane przez maszynę wirtualną czyli wiadomości dla NullPointerException to

“Odwołanie do obiektu nie zostało ustawione na wystąpienie obiektu.”

a NotImplementedException ma Message:

“Metoda lub operacja nie jest zaimplementowana.”

Widząc taki komunikat każdy średnio zaawansowany programista poradzi sobie bez wujka G. Ale gdy treść komunikatu brzmi:

“Istniejący obiekt w obiekcie ObjectContext jest w stanie Added. Zmiany można zastosować tylko wtedy, gdy istniejący obiekt jest w stanie niezmieniony lub zmodyfikowany.”

sytuacja nieco się komplikuje.
Czytaj dalej »

Akcja “ETI kocha komputer” - retrospekcje

Studia, technicznie Komentarze (4) »

Bot niedostępny do końca konkursu. Jako autor proszę o nierozpowszechnianie kodu. Najprawdopodobniej w tym roku zmieni się system, w związku z czym i tak nie będzie on działał, ale dmuchamy na zimne.
Chyba każdy kto choć trochę interesował się akcją wie, że wygraliśmy. Chciałem w tym miejscu podziękować wszystkim za udział - pokazaliśmy naszą siłę ;-)

Spis treści:

Czytaj dalej »

Walentynki na ETI

Bez kategorii Komentarze (5) »

Dobrze a więc bot gotowy …
Opis działania:
Bot składa się z 2 skryptów:
1. Skrypt dodaje kolejne adresy mail na milce adresy są tworzone md5(time()) a więc nie za ładnie (kolejny_adres.php)
2. Skrypt odbiera pocztę ze zdefiniowanej skrzynki i zapisuje e-mail + token do bazy danych. Na podstawie tych danych “klika linki” (glosuj.php)
Wymagania:
NIE WYMAGA juz imap_OPEN
cURL, PDO (imap_open | fsock )
krótki opis instalacji:
1. ustawiamy alias catch-all i przekierowujemy pocztę na jakieś konto POP3
2. ściągamy pliki i wgrywamy na serwka.
3. Tworzymy tabele w bazie danych
4. edytujemy config.php ( chyba intuicyjnie opisane zmienne)
5. ustawiamy Crona …
*/3 * * * * /bin/bash/php /home/username/kolejny_adres.php

w zaleznosci od zainstalowanych na serwerze bibliotek:

*/3 * * * * /bin/bash/php /home/username/glosuj.php
#lub
*/3 * * * * /bin/bash/php /home/username/glosuj_fsock.php

lub przez wget

MSI SoundCard nie działa.

hardware, technicznie Komentarze (1) »

Ostatnio kupiłem płytę główną MSI. Model (MS 7010) ze względu na to, że stara (MS 7030) spaliła się.
Po instalacji okazało się, że pomimo zainstalowanych sterowników C-Media ( menadżer urządzeń nie pokazuje żadnych konfliktów ) karta dźwiękowa nie działa.

Rozwiązaniem okazało się zwarcie zworek w “gnieździe JAUD1″. Chyba wszystkie płyty MSI a przynajmniej obie wymienione mają zbiór bolców opisany JAUD1 schemat bolców:
:::.:
zworki należy umieścić w ten sposób:
::|.|
oczywiście schemat dotyczy używania zintegroanej karty dźwiękowej

Reklama kontekstowa

ogólnie Komentarze (0) »

Reklama kontekstowa zadomowiła się już w internecie na dobre. Powstaje coraz więcej wszelkiego rodzaju systemów. Wszystko pięknie ładnie ale: Jak mam to rozumieć Jak mam rozumieć taką reklamę zamieszczoną poniżej zdjęcia mojej klasy na jednym z popularnych serwisów?

Zmiany w Namespace - PHP 5.3

technicznie Komentarze (0) »

Jak powszechnie wiadomo głównym udogodnieniem w nowej wersji php (5.3) ma być obsługa przestrzeni nazw (namespace). Postanowiłem sprawdzić jak obsługa wygląda obecnie. Pojawiła się ku temu okazja gdyż miałem przygotować projekt na przedmiot: “Aplikacje Internetowe”.
Trójwarstwowość i MVC
Moim zadaniem było stworzenie aplikacji prostego sklepu z podstawową funkcjonalnością. Może troche na wyrost ale postanowiłem że w aplikacji wydzielę trzy warstwy ( danych , logiki i prezentacji) a całość oprę na wzorcu MVC. No i właśnie z tym wzorcem wiąże się zastosowanie w moim projekcie namespaces.
Moje postrzeganie MVC jest oparte o frameworka phiend i wydaje mi się być jednym z najsłuszniejszych:
M - Model zapewnia abstrakcję na dane ( warstwa danych );
C - Controler realizuje logikę aplikacji ( jest to warstwa logiki )
V - View wyświetla dane (jest to warstwa prezentacji )

Odrazu nasuwa się aby implememntując wymusić jakiś podział kodu na te trzy części.
Ciężko jednak byłoby zaimplementować każdą z części używając jednej klasy. Nie mówie tutaj o tworzeniu na siłę klas abstrakcyjnych a później dziedziczeniu po nich np tylko po to aby mieć dostęp do instancji PDO - jest to błędne w sensie OOP.
Zamist tego można wykorzystać dość dobrze juz rozwinięty mechanizm przestrzeni nazw w PHP co według mnie jest najbardziej intuicyjne i zgodne OOP.

Namespace w praniu
Przestrzenie nazw w PHP ewaluowały. Przeżyły one ostatnio zupełną rewolucję - została zmieniona składnia przestrzeni nazw(wiadomość na php). Dotychaczasowe podwójne dwukropki zostały zastąpione backslashami. Przestrzeń która kiedyś wyglądała tak

namespace jjroman_net::kontroler;

teraz wygląda tak:

namespace jjroman_net\kontroler;

Podczas zabawy z wersją alpha2 okazało się że jest ona strasznie zabugowana. Z bugtracka dowiedziałem się ze większość moich problemów została już usunięta w wersji CVS, No więc nie pozostało nic innego jak ściągnąć takową.
Z przyjemnością stwierdzam, że obecna wersja alpha4 jest dużo bardziej dopracowana i da się na niej pracować. Co prawda zdarza się że muszę zgłosić buga :] ale są to juz dość drobne w porównaniu do wersji alpha2 uchybienia.
Reasumując zachęcam wszystkich do zapoznania się z możliwościami nowej wersji PHP gdyż są one duże :}

Silnik: Wordpress - Theme autorstwa N.Design Studio. Spolszczenie: Adam Klimowski.
RSS wpisów RSS komentarzy Zaloguj