Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >

Kocurro
Napisane: 17.04.2013, 13:04:09





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Hmm... Czy tylko ja widzę, że w "bbp_get _topic_title()" znajduję się spacja, której nie powinno być?

Usuń spację i będzie działać.
  Forum: PHP · Podgląd postu: #1039720 · Odpowiedzi: 5 · Wyświetleń: 269

Kocurro
Napisane: 7.06.2011, 13:57:48





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Jak promotor tak do Ciebie mówi to pytasz go czy masz zadzwonić pod numer (22) 622 07 18 i poinformować o incydencie.

Pamiętaj o jednym - Tobie mogą naskoczyć a promotor może mieć przewalone, jak go uwalą to ma wilczy bilet i nigdzie nie może być zatrudniony jako pracownik dydaktyczny lub naukowy. Po prostu jest pozbawiony prawa wykonywania zawodu. U mnie na uczelni jeden już tak poleciał - przez pół roku szukał pracy na innych uczelniach zanim mu wytłumaczyli, że nie mają prawa go zatrudnić.

Ty masz prawo do komisyjnych także z zewnętrznymi obserwatorami, możesz także składać skargi itp. Poza tym promotor dostaje kasę za Ciebie - ile nie mogę zdradzić (tajemnica służbowa - po co podpisywałem to gówno wink.gif ) ale mogę powiedzieć, że musi być głupim by nie chcieć prowadzić studenta.

Inna sprawa, że może na uczelni jest taka sitwa i zastraszenie - wtedy tym bardziej telefon, jak zacznie się dochodzenie to może zmieni się co nieco.
  Forum: Hydepark · Podgląd postu: #870239 · Odpowiedzi: 37 · Wyświetleń: 2 804

Kocurro
Napisane: 19.03.2010, 12:10:39





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Witam,

proponowałbym zdefiniowanie prostej funkcji. Innego sposobu niestety nie znam i wydaje mi się, że takowego nie ma.

Pozdrawiam serdecznie,
Łukasz
  Forum: PHP · Podgląd postu: #726243 · Odpowiedzi: 4 · Wyświetleń: 677

Kocurro
Napisane: 18.03.2010, 13:23:32





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Kolego mylisz się - raz jest uruchomiony program SCREEN a drugim razem interpreter sh, który wykonuje skrypt hlds_run
  Forum: Hydepark · Podgląd postu: #725907 · Odpowiedzi: 2 · Wyświetleń: 765

Kocurro
Napisane: 17.03.2010, 10:11:18





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

SMF ? Ostatnio integrowałem ... potrzebowałem dwóch dni na instalację i rozpoznanie co i jak a potem poszło z górki, więc chyba nie powinno być problemów z tym smile.gif
  Forum: Hydepark · Podgląd postu: #725488 · Odpowiedzi: 5 · Wyświetleń: 1 280

Kocurro
Napisane: 25.02.2010, 12:04:29





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Kolega raczej powinien szukać edytorów grafów. Drzewo jest specyficznym grafem a struktura przedstawiona przez kolegę nie mieści się w granicach definicyjnych drzewa.

Pozdrawiam serdecznie,
Łukasz Piotr Łuczak
  Forum: Hydepark · Podgląd postu: #717661 · Odpowiedzi: 5 · Wyświetleń: 1 172

Kocurro
Napisane: 19.02.2010, 13:27:59





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Ok już widzę smile.gif

To tak - musisz zapisywać takie informacje:
- czas kliknięcie (unix timestamp)
- id osoby, której link kliknięto (jeszcze lepiej jak całą treść linka dodatkowo zapiszesz)
- ip z jakiego pochodzi kliknięcie
- id z ciasteczka, tutaj dobrze jest je sprytnie schować (wiadomo - mogą skasować ale i tak warto zapisać)
- informacje o przeglądarce (tutaj bardziej potrzebne jest id z tabeli linkującej w której masz wszystkie browser info jaki się pojawiły)
- informacje o referrer (także można zastosować tablicę linkującą)

Oczywiście opisuję tutaj sposób, który zbiera sporo informacji więc trzeba uprościć sobie na tyle na ile się chce.

Przetwarzanie danych:

Należy co jakiś czas odpalać skrypt, który będzie informacje o przeglądarce rozbijał na fragmenty i zapisywał w bazie (czyli rozpoznawał typ, wersję przeglądarki, systemu operacyjnego, używanej wersji .NET itp.). Oczywiście jak podzielisz to już zależy od Ciebie smile.gif

Referrery także przetwarzasz skryptem według kryteriów jakie uznasz za skuteczne

W efekcie mamy tablice z listą typów przeglądarek i danych z nich wyciągniętych, do tego dochodzi lista referrerów przetworzonych.

W zapytaniach będziemy jeszcze używać tablic geolokalizacyjnych.

Algorytm:

Zapisujemy każde kliknięcie i zwiększamy nim ilość kliknięć. Co jakiś czas odpalamy skrypt, który sprawdza zebrane dane i na podstawie raportu: blokujemy konto, usuwamy możliwość korzystania z systemu, odejmujemy kliknięcia lub nie robimy nic.

Skrypt sprawdzający to po prostu olbrzymie zapytanie dynamiczne (czyli po prostu funkcja składowana bazy danych, która wykonuje dynamiczne zapytania) które daje w efekcie raport.

Skrypt sprawdza wyznacza współczynnik podobieństw kliknięć - jeśli jest zbyt wielki lub zbyt mały wtedy należy wygenerować raport szczegółowy dla danego użytkownika.

Można dołożyć automatyczne działanie na podstawie raportu.

Dzięki temu mechanizmowi można wyłapać nawet multikonta - bo nagle okaże się, że rozkład kliknięć jest niemal identyczny.

W wielu rozwiązaniach łączyłem te dane zebrane w tabeli z danymi w tabeli aktywności - jeśli odsetek osób, które są unikalne a tylko klikną i nic więcej na stronie nie robią to to jest podejrzane.

Inne rozwiązania:

Captcha i podobne są półśrodkiem - widziałem projekty studentów drugiego roku elektroniki i telekomunikacji na jednej z politechnik, które to projekty dawały sobie radę ze sporą ilością już dostępnych rozwiązań. Dźwiękowa captcha także nie daje rozwiązania.

Częściowym rozwiązaniem może być podwójny głos - czyli klikasz w link a potem musisz podać swój email i na niego dostajesz list z jednorazowym linkiem do kliknięcia.

Ogólnie to należy łączyć rozwiązania blokujące zliczenie kliknięcia (captcha, podwójny głos, blokada w ciasteczku itp.) z analizą raportu. Wtedy szanse na znalezienie oszusta bardzo mocno rosną.

Wiadomo, że zawsze ktoś może się przecisnąć ale jeśli użyjemy odpowiedniej kombinacji środków to dla potencjalnego oszustwa gra może okazać się niewarta świeczki.

Oczywiście należy jeszcze rozważyć czy warto się zabezpieczać - takie zabezpieczenia potrafią sprawić, że ludzie nie chcą korzystać z serwisu itp. Dodatkowo większy ruch na serwisie to ... winksmiley.jpg

To tak w skrócie jak wygląda sprawa - dokładne rozwiązanie się projektuje pod specyficzny problem. Jeśli w grę wchodzi prestiż w grze to nie ma co się wysilać, jeśli zaś wchodzą pieniądze to dla spokoju własnego tyłka warto coś z tym zrobić.

Wiadomo, że ilość zebranych danych może być olbrzymia i ich przetwarzanie zajmować sporo czasu więc trzema pomyśleć samemu czy warto smile.gif
  Forum: Hydepark · Podgląd postu: #715027 · Odpowiedzi: 26 · Wyświetleń: 3 670

Kocurro
Napisane: 17.02.2010, 14:09:48





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Zedytowałem tamten post - przepraszam pomyliłem się smile.gif

Teraz powinno być już ok, po prostu funkcję cmp trzeba wynieść do klasy.

Pozdrawiam serdecznie,
Łukasz
  Forum: PHP · Podgląd postu: #714293 · Odpowiedzi: 4 · Wyświetleń: 644

Kocurro
Napisane: 18.01.2010, 23:40:47





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Ogólnie jeśli zleceniodawca się szanuje to umowa będzie sporządzona przez prawników, jeśli zleceniobiorca się szanuje to prawnikowi pokaże umowę, a jeśli oboje lubią grać w rosyjską ruletkę swoimi czterema literami to podpiszą standardowy druk znaleziony na google.

Prawdziwa umowa na stronę to: umowa, specyfikacja, harmonogram itp. itd.

Oczywiście inaczej sprawa wygląda jeśli zleceniobiorca już wykonał zlecenie, zostało zaakceptowane itp. wtedy po prostu pospisuje się umowę by mieć podkładkę.

athabus: ja już przy zleceniach większych niż 2 tys. pln (wiem, że to dla webdevelopera śmieszna kwota) biorę prawnika by napisał dobrze umowę, sprawdził specyfikacje, wymagania ewentualnie umowę zaproponowaną przez drugą stronę. W ten sposób mam pewność, że klient nie zrobi mnie w konia i nie będę musiał robić serwisu jak nasza-klasa za 2 tys. pln.

Jeśli się szanujesz - skorzystaj z porady prawnika, a jeśli zlecenie jest na taką kwotę, że się opłaca to zastanów się czy warto je brać ... możesz się łatwo w bagno wkopać.

@lukasjed: jeśli kwiaciarnia nie wymaga podpisania umowy przed wykonaniem i kwota nie jest jakaś oszałamiająca to proponuję: zrób stronę, zademonstruj, daj potestować, jak zaakceptują to podpiszcie standardową umowę i od razu protokół odbioru w którym będziesz miał formułkę, że zleceniodawca nie wnosi zastrzeżeń.

Czasami warto się ubezpieczyć bo inaczej można wpakować w bagno lub chociażby koszty...
  Forum: Hydepark · Podgląd postu: #703172 · Odpowiedzi: 11 · Wyświetleń: 2 966

Kocurro
Napisane: 2.10.2009, 10:18:53





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

W skrócie:

- jeśli nie istnieje plik program.pid to go tworzysz i wpisujesz do niego swój PID i wykonujesz program
- jeśli istnieje to odczytujesz PID i sprawdzasz czy taki proces jeszcze istnieje, jeśli nie istnieje to do pliku program.pid wpisujesz swój PID i wykonujesz program
- jeśli proces o danym PID istnieje to znaczy, że ...
  Forum: PHP · Podgląd postu: #667115 · Odpowiedzi: 4 · Wyświetleń: 792

Kocurro
Napisane: 23.05.2009, 13:49:46





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Po pierwsze - dałeś ciała bo sprzedawałeś z jakimikolwiek prawami a nie na licencji

Mnie klient straszył sądem bo aplikacje za którą zapłacił 10 tys. pln ja potem sprzedawałem za 2 tys. pln - tyle, że wszystko opierało się na licencjach na używanie oprogramowania bez praw do kodu źródłowego.

Po drugie - lepiej zapłać około 150 pln dobremu papudze za godzinę rozmowy i przedstaw mu dokładnie sytuację.

Po trzecie - w umowie o dzieło zlecenie należy odpowiednio zapsiywać co jest przedmiotem umowy czyli twór końcowy ale bez kodów źródłowych. A jeszcze lepiej zainwestować powiedzmy w ionCube'a i klientowi dawać zakodowane skrypty.

Po czwarte - klient nie ma żadnych praw autorskich do tworu może mieć co najwyżej prawa majątkowe jeśli zostały one niego przez Ciebie przeniesione.

Po piąte - naruszenie praw autorskich jest wtedy kiedy ja coś napiszę pokażę Ci do oceny powiedzmy bez przekazania żadnych praw a Ty potem wykorzystasz moją pracę by komuś innemu wykonać skrypt - wtedy Ty łamiesz moje prawa autorskie.

Podsumowując - niech gościu idzie do sądu, po dwóch trzech tygodniach dostanie pismo by uzupełnić braki formalne. Na pierwszej rozprawie jeśli do niego dojdzie sprawa zostaje oddalona, wtedy Ty pokazujesz bardzo duży rachunek od prawnika i domagasz się zwrotów kosztów, które ponosi powód w tym wypadku. Oczywiście to tylko w sytuacji, która wygląda tak jak mniej więcej przedstawiłeś. Wszystko zależy od tego co było zapisane w umowie.

Aha - brak zapisów w umowie powoduje, że w mocy są postanowienia kodeksów co też w tej sytuacji działa na Twoją częściową korzyść (bo zarówno Ty jak i klient możecie swobodnie dysponować pracą).

Nauka dla wszystkich - wyskoczcie raz z tych 150 pln na wizytę u prawnika połączoną z przygotowaniem licencji oraz wzorów umów i potem możecie spać spokojnie.

Pozdrawiam,
Łukasz

ps: nie jestem prawnikiem więc w moich wypowiedziach mogą być błędy więc proszę nie powoływać się na mnie w sądzie.
  Forum: Hydepark · Podgląd postu: #611044 · Odpowiedzi: 23 · Wyświetleń: 3 546

Kocurro
Napisane: 22.05.2009, 11:00:48





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

  1. <?php
  2.  
  3. function pobierzWartosc( &$aValues, $aPath )
  4. {
  5.  $aTemp = $aValues;
  6.  $aTempPath = $aPath;
  7.  
  8.  while ( count( $aTempPath ) > 0 && is_array( $aTemp ) )
  9. {
  10.   foreach ( $aTemp as $sKey => $mValue )
  11.   {
  12.      if ( $sKey == $aTempPath[0] )
  13.      {
  14.         array_shift( $aTempPath );
  15.         $aTemp = $aTemp[$sKey]; // nie wiem czy nie powinno być $aTemp = &$aTemp[$sKey];
  16.         if ( count( $aTempPath ) == 0 )
  17.         {
  18.            return $mValue;
  19.            continue 2;
  20.         }
  21.      }
  22.   }
  23. }
  24.  
  25. return null;
  26. }
  27. ?>


Coś w tym stylu - nie mam czasu by przetestować więc mogą być błędy.

Pozdrawiam,
Łukasz


----

ps: Dobrze płacicie w MIMO ? bo nie wiem czy opłaca mi się pisać CV
  Forum: PHP · Podgląd postu: #610605 · Odpowiedzi: 7 · Wyświetleń: 920

Kocurro
Napisane: 25.03.2009, 11:56:42





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Źle wysyłasz dane do przeglądarki. Powodem może być:

- wysyłanie oprócz danych dodatkowych znaków
- niepoprawne nagłówki
- konfiguracja serwera
- błędny kod php

pozdrawiam,
Łukasz

ps: u mnie działa bez zarzutu
  Forum: PHP · Podgląd postu: #588737 · Odpowiedzi: 2 · Wyświetleń: 870

Kocurro
Napisane: 20.03.2009, 11:15:01





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Zapomniałeś o opcji "Ukryj chronione pliki systemu..." a potem ciesz się, że tylko 4 GB tongue.gif
  Forum: Komputery i oprogramowanie · Podgląd postu: #586640 · Odpowiedzi: 20 · Wyświetleń: 3 885

Kocurro
Napisane: 3.03.2009, 11:50:32





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

http://smarty.net/manual/en/plugins.resources.php smile.gif
  Forum: PHP · Podgląd postu: #578824 · Odpowiedzi: 1 · Wyświetleń: 777

Kocurro
Napisane: 26.01.2009, 11:51:29





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Kolego - odświeżenie dns'ów w przypadku dynamicznych ip jest ustawione na 60 sekund. Czyli co 60 sekund następuje odpytanie głównego serwera dns Twojej domeny jaki jest adres ip dla danej domeny. Do tego doliczyć należy bezwładność innych serwerów po drodze. Więc reakcję możesz mieć dopiero nawet po 5 minutach. Nie martw się więc tym, że po ponownym połączeniu od razu nie wyskoczy Ci nowa strona smile.gif

Aha - pamiętaj, że jak masz windowsa to on ma zwalony cache dns i musisz go odświeżyć (np. uruchamiając ponownie komputer lub też naprawiając połączenie sieciowe).

pozdr.
Łukasz
  Forum: Hydepark · Podgląd postu: #562960 · Odpowiedzi: 8 · Wyświetleń: 1 546

Kocurro
Napisane: 27.11.2008, 20:12:08





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

To bardzo proste - przegiąłeś z JavaScriptem i oto efekt - google nie zna adresu adresu pozostałych wersji językowych i nie ma jak je poznać.
  Forum: Hydepark · Podgląd postu: #541466 · Odpowiedzi: 7 · Wyświetleń: 1 826

Kocurro
Napisane: 25.07.2008, 11:03:20





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Witam szanownego kolegę,

Temat poruszany był już wielokrotnie. W zasadzie sprawa przedstawia się następująco, w mojej opinii, :

* Własny framework:
- dużo czasu potrzeba na jego stworzenie
- skrojony na miarę
- nie posiada niepotrzebnych opcji
- wymaga dużej wiedzy, znajomość problemu, doświadczenia, umiejętność pracy przy tak dużych zagadnieniach

* Cudzy framework:
- dostępny od ręki
- konieczność jego nauczenia się
- mniejsze wymagania co do wiedzy itp.
- przeważnie mniej wydajny

Wszystko zależy od wielu czynników. Jeśli chcesz byśmy Ci polecili jakikolwiek framework to poczytaj forum, ale i tak skończy się na tym, że będziesz musiał każdy liznąć - a to dlatego, że każdy z nas korzysta z innych rozwiązań i one są dla niego optymalne. A Ty jeśli chcesz tworzyć to musi znać kilka różnych frameworków.

Bo bycie programistą to umiejętność dobrania narzędzia do problemu - można powiedzieć, że jest to "kombinowanie jak zrobić by się nie narobić a zarobić" winksmiley.jpg

Wiem, że nie pomogłem nic a nic ale cóż - sam musisz zdecydować w czym Ci najlepiej to, że wszyscy noszą stringi nie znaczy, że będą dla Ciebie dobre prawda ? winksmiley.jpg

pozdrawiam,
Łukasz
  Forum: PHP · Podgląd postu: #497525 · Odpowiedzi: 2 · Wyświetleń: 1 204

Kocurro
Napisane: 25.07.2008, 11:04:31





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Są firmy, które oferują takie bazy danych więc to jest wystarczająco efektywne - mój serwer dziennie jest około dziesięć razy skanowany by sprawdzić czy na nim nie stoi proxy.

Pozdrawiam,
Łukasz
  Forum: PHP · Podgląd postu: #497526 · Odpowiedzi: 11 · Wyświetleń: 2 161

Kocurro
Napisane: 24.07.2008, 20:03:22





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Wyspecjalizowane systemy biznesowe charakteryzujące się wysoką niezawodnością.

pozdrawiam,
Łukasz
  Forum: Hydepark · Podgląd postu: #497313 · Odpowiedzi: 2 · Wyświetleń: 5 660

Kocurro
Napisane: 24.07.2008, 18:56:05





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

W ciasteczku przechowujesz unikalny identyfikator, potem w bazie zliczasz wejścia z tego numeru ip i danego identyfikatora. W oddzielnej tabeli masz informacje kiedy ostatni raz zliczono dane wejście.

Proste ? Jasne, że tak - dziękuję za kliknięcie pomógł winksmiley.jpg

pozdr.
Łukasz
  Forum: PHP · Podgląd postu: #497296 · Odpowiedzi: 12 · Wyświetleń: 2 369

Kocurro
Napisane: 18.07.2008, 09:58:13





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Wyjście z wgeta:

Kod
Resolving forum.4trucks.pl... 85.128.242.221
Connecting to forum.4trucks.pl|85.128.242.221|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: http://sklep.4trucks.pl [following]


Więc chodzi o konfigurację apache'a, która jest niepoprawna. Problemem nie są dns'y bo nie jest przekierowanie na poziomie dns'ów.

Musisz pomolestować admina o konfigurację apache'a - podejrzewam, że to nie jest efekt działania skryptu php, który wysyła nagłówek przekierowania. Sprawdź pliki .htaccess czy w nim nie masz przekierowania. Należałoby także sprawdzić konfigurację vhostów.

pozdr.
Łukasz
  Forum: Po stronie przeglądarki · Podgląd postu: #494651 · Odpowiedzi: 9 · Wyświetleń: 1 997

Kocurro
Napisane: 26.07.2008, 09:50:24





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Panowie nie mylmy dwóch pojęć.

W licencji mogę mieć napisane, że z programem możesz robić co chcesz łącznie z kadami źródłowymi. Ale licencja Cię nie obowiązuje dopóki:
- nie zakupisz jej ode mnie - chyba, że udostępniam ją za darmo
- nie spełnisz wszystkich wymagań licencji

Z zasady jeśli nawet program jest open source to dopóki nie kupisz licencji nie masz prawa go używać (chyba, że daję licencję za darno).

Jeśli mój produkt jest na bazie licencji A to i tak mogę ustalić, że warunkiem udzielenia przeze mnie tej licencji jest na przykłąd:
- wniesienie opłaty w wysokości X złotych,
oraz
- umówienie na kolację ze swoją siostrą (joke winksmiley.jpg ).

I dopóki te warunki nie zostaną spełnione to licencja Ciebie nie dotyczy a zatem nie masz żadnych praw do produktu. Dodatkowo w licencji mogę zrobić następujący myk:

Stworzyć licencję pirata i w niej zapisać, że obowiązuje Cię ona jeśli nie posiadasz jakiekolwiek innej licencji a używasz produktu i że wtedy zobowiązujesz sobie zapłacić odszkodowanie w wysokości X złotych. Zgodnie z prawem jeśli taka umowa licencyjna pojawi Ci się przy instalacji bądź pierwszym uruchomieniu. Akurat o tym wiem co mówię bo sam tak zarobiłem trochę na piratach mojego skryptu smile.gif

A wracając do głównego tematu:
- możesz wymusić konieczność rejestracji,
- możesz zapisać w warunkach uzyskania licencji bądącymi umową pomiędzy Tobą a ewentualnym użytkownikiem, warunki legalnego i nielegalnego korzystania oraz kwotę odszkodowania za nielegalne używanie,
- możesz dodać w swoim skrypcie odpowiedni mechanizm wyłapywania piratów, przy czym w umowie licencyjnej pirackiej musisz zawrzeć warunek, że w tym przypadku program samowolnie będzie się kontaktował z sewrwerem.

Nie uchroni Cię to przed kradzieżą Twojego skryptu - ale pozwoli zarobić. Ja tak zarobiłem na skrypcie drugi tyle co na obrocie legalnym - fakt sprawy kończyły się ugodą, zwykle 4x lub 5x stawka za zwykłą licencję.

Ale uwaga !

To co napisałem dotyczy sytuacji kiedy program jest rozprowadzany w Polsce i jest on dostępny tylko dla rezydentów RP. Nie wiem jak sprawa wygląda dokładniej jeśli chodzi o prawo międzynarodowe.


Sama licencja GPL oznacza praktycznie to, że ja mając licencję na używanie mogę od Ciebie zarządzać kodu źrógłowego a Ty masz obowiązek mi go udostępnić.

To co napisałem to moja opinia na podstawie własnych przeżyć - jednakże radziłym Ci skontaktować się dokładnie z prawnikiem, który zajmuje się prawem własności inteletkualnej i prawem licencyjnym, on Ci za odpowiednią opłatą doradzi oraz napisze bądź wybierze llicencje - w ten sposób będziesz miał pewność i możliwość pociągnięcia kogoś do sądu jak coś pójdzie nie tak (wymagaj jednak opinii na piśmie winksmiley.jpg )

Pozdrawiam,
Łukasz

ps: jeśli coś jest nie jasne - proszę pytać. Nie wyspałem się w pełni.
  Forum: Hydepark · Podgląd postu: #497818 · Odpowiedzi: 19 · Wyświetleń: 4 244

Kocurro
Napisane: 7.03.2008, 12:17:22





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Twój kod:

  1. <?php
  2. class DataBase{
  3. private static $AdoDbLiteInstance = null;
  4.  
  5. private function __construct ( )
  6. {
  7. echo 'konstruktor<br>';  //1
  8. self::$AdoDbLiteInstance = NewADOConnection("mysqlt");
  9. self::$AdoDbLiteInstance->Connect($dbHost, $dbUser, $dbPass, $dbName);
  10.  
  11. self::$AdoDbLiteInstance->Execute("SELECT * FROM tabla"); //2
  12. echo self::$AdoDbLiteInstance.'<br>'; //3
  13. }
  14.  
  15. public static function getInstance ( )
  16. {
  17. echo 'getinstance<br>'; //4
  18. if (is_null(self::$AdoDbLiteInstance))
  19.  new self();
  20. echo self::$AdoDbLiteInstance.'<br>'; //5
  21. self::$AdoDbLiteInstance->Execute("SELECT * FROM tabla"); //6
  22. return self::$AdoDbLiteInstance;
  23. }
  24. }
  25. ?>


Natomiast poprawny kod to byłby np.

  1. <?
  2.  
  3. class DataBase extends
  4. {
  5.  private static $_instance;
  6.  private $_ado;
  7.  
  8.  private function __construct()
  9.  {
  10. $this->_ado = NewADOConnection("mysqlt");
  11. $this->_ado->Connect($dbHost, $dbUser, $dbPass, $dbName);
  12.  
  13. $this->_ado->Execute("SELECT * FROM tabla"); //2
  14.  }
  15.  
  16. public static function getInstance()
  17. {
  18.  
  19. if (is_null(self::$AdoDbLiteInstance))
  20.  self::$AdoDbLiteInstance = new self();
  21. return self::$AdoDbLiteInstance;
  22. }
  23.  
  24. public static function getADO()
  25. {
  26. if (is_null(self::$AdoDbLiteInstance))
  27.  self::$AdoDbLiteInstance = new self();
  28. return self::$AdoDbLiteInstance->_ado;
  29. }
  30. }
  31. ?>


Pisane na szybko z palca by uzmysłowić o co chodzi winksmiley.jpg

Ogólnie chodzi o to by nie mieszać części statycznej od części dynamicznej. Część dynamiczna nie powinna dotykać części statycznej.

W Twoim przypadku o wiele lepiej byś zrobił jakbyś napisał zamiast swojego taki kod:

  1. <?php
  2. class DataBase{
  3. private static $AdoDbLiteInstance = null;
  4.  
  5. public static function getInstance ( )
  6. {
  7. echo 'getinstance<br>'; //4
  8. if (is_null(self::$AdoDbLiteInstance))
  9. {
  10. self::$AdoDbLiteInstance = NewADOConnection("mysqlt");
  11. self::$AdoDbLiteInstance->Connect($dbHost, $dbUser, $dbPass, $dbName);
  12.  
  13. self::$AdoDbLiteInstance->Execute("SELECT * FROM tabla"); //2  
  14. }
  15. echo self::$AdoDbLiteInstance.'<br>'; //5
  16. self::$AdoDbLiteInstance->Execute("SELECT * FROM tabla"); //6
  17. return self::$AdoDbLiteInstance;
  18. }
  19. }
  20. ?>


Dzięki temu nie tworzysz obiektu do którego nie masz nigdzie uchwytu.

pozdr.
  Forum: Object-oriented programming · Podgląd postu: #450776 · Odpowiedzi: 10 · Wyświetleń: 1 853

Kocurro
Napisane: 26.02.2008, 21:01:52





Grupa: Zarejestrowani
Postów: 461
Dołączył: 17.09.2003
Skąd: Łódź

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

Temat był poruszany, funkcji/klasy brak, piszę właśnie klasę do obsługi tego - możliwe, że będzie w weekend gotowa.

Jeśli chcesz samemu to zaimplementować to musisz poczytać o strukture plików PE/COFF.

Pozdr.
  Forum: Szukam · Podgląd postu: #447274 · Odpowiedzi: 7 · Wyświetleń: 2 449

2 Stron V   1 2 >

New Posts  Nowe odpowiedzi
No New Posts  Brak nowych odpowiedzi
Hot topic  Popularny temat (Nowe)
No new  Popularny temat (Brak nowych)
Poll  Sonda (Nowe)
No new votes  Sonda (Brak nowych)
Closed  Zamknięty temat
Moved  Przeniesiony temat
 

RSS Wersja Lo-Fi Aktualny czas: 19.04.2024 - 14:51