Powiązane (1)

  pokaż (1) 
  • Reklamy Google

  • breja +14  

    Proponuje limit 1 komentarz/30s

    pokaż komentarz
    breja
  • pirat_drogowy_i_komputerowy +12  

    1 na godzinę i nie będzie kłótni.

    pokaż komentarz
    pirat_drogowy_i_komputerowy
  • pirat_drogowy_i_komputerowy +5  

    Czarna magia!

    pokaż komentarz
    pirat_drogowy_i_komputerowy
  • masej +2  

    Wiecie po co to było?? PROPAGANDA FUNKCJI [USUŃ]! xD

    pokaż komentarz
    masej
  • argothiel -2  

    "Usuń"-spam. ;)

    pokaż komentarz
    argothiel
  • Staszek +168  

    To się nie może udać :)

    pokaż komentarz
    Staszek
  • Anarchius +158  

    zdublowałeś

    pokaż komentarz
    Anarchius
  • MrGrandma +50  

    super fotki masz na tej swojej "stronie" ! :)
    http://assimilated.pl/borg/Zdjecia-0022%231.jpg

    pokaż komentarz
    MrGrandma
  • alanbem +5  

    Gdzieś już to widziałem :D

    pokaż komentarz
    alanbem
  • RomanX +3  

    O kurde, nawet + i - są symetrycznie nadawane. To się nazywa duplikat...

    pokaż komentarz
    RomanX
  • argothiel -1  

    Ciekawe - ja dałem plusa tylko jednemu z tych komentarzy. ;)

    pokaż komentarz
    argothiel
  • Staszek +168  

    To się nie może udać :)

    pokaż komentarz
    Staszek
  • Anarchius +157  

    zdublowałeś

    pokaż komentarz
    Anarchius
  • Tong +50  

    super fotki masz na tej swojej "stronie" ! :)
    http://assimilated.pl/borg/Zdjecia-0022%231.jpg

    pokaż komentarz
    Tong
  • herejon +5  

    Gdzieś już to widziałem :D

    pokaż komentarz
    herejon
  • RomanX +3  

    O kurde, nawet + i - są symetrycznie nadawane. To się nazywa duplikat...

    pokaż komentarz
    RomanX
  • argothiel -1  

    Ciekawe - ja dałem plusa tylko jednemu z tych komentarzy. ;)

    pokaż komentarz
    argothiel
  • MrGrandma 0  

    Ale nicki sie nie powtarzaly! :|

    pokaż komentarz
    MrGrandma
  • poludnik +56  

    co Wy odp%$#$!#$cie ?

    pokaż komentarz
    poludnik
  • dziabong +29  

    Wulgaryzmy cenzurują się automatycznie. Nie musisz tego robić na siłę :)

    pokaż komentarz
    dziabong
  • zwierzak2003 +24  

    test: co Wy odp#%$$#%acie

    pokaż komentarz
    zwierzak2003
  • MEZmaster -2  

    @dziabong - co Ty k#!!a p%#$##%isz?

    pokaż komentarz
    MEZmaster
  • zwierzak2003 +3  

    A nie wiem, p%!%%$!i jakieś j!%ane farmazony. Idzie się tylko wk$!!ić

    pokaż komentarz
    zwierzak2003
  • ponton +12  

    Wszystko fajnie, tylko że sporo zdublowanych komentarzy jest powodowana klikaniem w "Odśwież" przy wysyłaniu danych do serwera. W takim przypadku przeglądarka wyśle komentarz drugi raz i nie pomoże żaden wyłączony przycisk.

    pokaż komentarz
    ponton
  • Sh1eldeR +8  

    Tu by mogło pomóc sprawdzanie po stronie serwera już nawet niekoniecznie jakiegoś numeru sekwencyjnego, tylko treści komentarza i ew. czasu wysłania. Taka sama treść w ciągu np. minuty -- dubel (o ile w ogóle ktoś może celowo chcieć wysłać 2x taki sam komentarz, nie mając jednocześnie zamiaru trollowania).

    Sam pomysł z JavaScriptem jest jednak fajny i pomógłby w wielu przypadkach, a nigdy nie powinien przeszkodzić. Poza tym jest dość prosty do wprowadzenia, co pokazał autor posta.

    Jak wiadomo, idealna ochrona antyspamowa w zasadzie nie istnieje, a taka naprawdę zbliżona do idealnej jest skomplikowana. Ale nawet proste rozwiązania działają często jak brzytwa i obcinają 80 czy 90% spamu (jednocześnie nie ruszając nie-spamu), stąd warto je wprowadzić.

    PS. Awatar Ci się przykleił do góry nogami. Myślę, że to poważniejszy bug! ;-)

    pokaż komentarz
    Sh1eldeR
  • Michal2 -6  

    @ponton
    Raczej wszystkie zdublowane komentarze sa tak wysłane, poza tym co gdy ktoś chce wysłać kolejny? Nie lepiej po prostu sprawdzić czy istnieje komentarz o identycznej treści?

    pokaż komentarz
    Michal2
  • nostrzak +1  

    Jakby ciezko bylo w skrypcie dodawania zrobic headerem przekierowanie z powrotem do strony danego wykopu. Sposoby na wysylanie zdublowanych zapytan POST/GET rozwiazano juz dawno temu.

    pokaż komentarz
    nostrzak
  • Michal2 -1  

    Polecam osobom które mnie zminusowały napisąć co im sie nie podobało i zaproponować własne super rozwiązanie, rozwiązanie autora jest po prostu nieprzemyślane.

    pokaż komentarz
    Michal2
  • fourtyfour 0  

    michał2: sprawdzenie komentarzy pod kątem takiej samej treści zarżnie bazę danych, a co za tym idzie serwis.

    pokaż komentarz
    fourtyfour
  • Bartholomew +13  

    ?

    pokaż komentarz
    Bartholomew
  • pirat_drogowy_i_komputerowy +7  

    !

    pokaż komentarz
    pirat_drogowy_i_komputerowy
  • mihaueQ +8  

    ?!

    pokaż komentarz
    mihaueQ
  • yojo2 +9  

    ¿¡

    pokaż komentarz
    yojo2
  • zwierzak2003 0  

    .

    pokaż komentarz
    zwierzak2003
  • kwasny -2  


    pokaż komentarz
    kwasny
  • mihaueQ +1  


    pokaż komentarz
    mihaueQ
  • Tavaro -3  


    pokaż komentarz
    Tavaro
  • wojtekmaj -3  

    ˙ɐuɐıs ǝs ǝıɔɾɐp

    pokaż komentarz
    wojtekmaj
  • koniczynek 0  

    Tutaj na wykopie każdy jest deweloperem i dobrze wie co i jak zrobić, a ilu z was zgłosiło się jak Tomek szukał ludzi do pracy?

    pokaż komentarz
    koniczynek
  • fourtyfour +9  

    Nie rozumiem. Co ma jedno do drugiego :) Może kiepsko płacił :)

    pokaż komentarz
    fourtyfour
  • niepokorny +8  

    ja na ten przykłąd nie mam w zwyczaju odpisywać na ogłoszenia bez wymienionych "widełek" płacowych

    pokaż komentarz
    niepokorny
  • Shurnieta 0  

    nawet na naszej klasie sie dubluja i tego nie zrobili do tej pory..
    wiec nie mamy o czym marzyc xdd

    pokaż komentarz
    Shurnieta
  • raq195 -2  

    WTF? Bo nie zrozumiałem przekazu:(

    pokaż komentarz
    raq195
  • teesik 0  

    Tak wszystkim przeszkadza,tak wszystkim przeszkadza...to może ktoś kto się zna,przepisałby to/napisał coś nowego do np.greasemonkey?Też jakiś półśrodek.
    A,i strona z włączonym NoScriptem "nie bangla".
    Pozdrawiam,

    pokaż komentarz
    teesik
  • wojtekmaj -2  

    Kolega właśnie pisze, wrzucę, jak będzie :)

    pokaż komentarz
    wojtekmaj
  • RomanX 0  

    Jest już?

    pokaż komentarz
    RomanX
  • Berber -6  

    Autor tego wykopu powinien wysłać swoje CV do google ;)

    pokaż komentarz
    Berber
  • waaski -3  

    przyznaje sie, nie rozumiem tego, może mi ktoś wytłumaczyć o co kaman?

    pokaż komentarz
    waaski
  • Sh1eldeR +8  

    @Wszyscy ci, co "nie rozumieją" i "nie wiedzą o co kaman":

    Autor wykopu przygotował demonstrację pokazującą przycisk, który wyłącza się zaraz po kliknięciu (robi się szary i już nie reaguje na kliknięcia). Gdyby przycisk Dodaj na Wykopie tak działał, to nie dałoby się go 2x przypadkowo kliknąć, bo po pierwszym razie zrobiłby się szary i się wyłączył, więc następne kliknięcia nic by nie dały i nie powodowały dubli.

    Jeśli zaś ktoś nie rozumie samego kodu, który autor wykopu wykorzystał do demonstracji, to nie musi go rozumieć. Nie musi też pisać, że nie rozumie, o czym gadają ludzie, którzy debatują nad tym kodem. Jeśli ktoś naprawdę chce to wiedzieć, to ma mój szacunek, ale będzie musiał się nauczyć 3 "komputerowych języków" (CSS, HTML i JavaScript). W razie czego w necie jest sporo tutoriali (zwykle słabych) i specyfikacji. Dla większości osób jednak prawdopodobnie najlepsze będzie nie przejmowanie się szczegółami implementacyjnymi.

    pokaż komentarz
    Sh1eldeR
  • wojtekmaj 0  

    Fajna gadka, ale szczerze mówiąc nie mam większego pojęcia o javascripcie i robiłem to na czuja ;) Esencją jest właściwie kilka znaków, które trzeba by było dodać tutaj:
    (input class="submit-button" name="commit" value="Dodaj" type="submit")

    a mianowicie:
    onclick="this.disabled=true, this.form.submit();"

    żal im transferu, czy co?

    ps. nawiasy trójkątne zmienione na okrągłe, bo inaczej kod znika ;)

    pokaż komentarz
    wojtekmaj
  • CK_sMiLe_CK -2  

    Fajna sprawa. Brawo wojtekmaj;)

    pokaż komentarz
    CK_sMiLe_CK
  • Biune -6  

    ale jajca, zadziałało! : )
    Dzięki wielkie!

    pokaż komentarz
    Biune
  • Biune -7  

    ale jajca, zadziałało! : )
    Dzięki wielkie!

    pokaż komentarz
    Biune
  • informatyk -8  


    pokaż komentarz
    informatyk
  • m4kb0l +87  

    To że jemu się udało to nie znaczy że Tobie się uda.

    pokaż komentarz
    m4kb0l
  • m4kb0l +88  

    To że jemu się udało to nie znaczy że Tobie się uda.

    pokaż komentarz
    m4kb0l
  • Mischaelli_Genialli +13  

    Już nie bo spieprzyłeś:/

    pokaż komentarz
    Mischaelli_Genialli
  • eleeka -4  

    @Titiyeyoo: Déjà vu :|

    pokaż komentarz
    eleeka
  • eleeka -4  

    @Titiyeyoo: Déjà vu :|

    pokaż komentarz
    eleeka
  • informatyk -5  

    Zwierzak chce chyba bardzo spaść w ranku. ;D

    pokaż komentarz
    informatyk
  • informatyk +11  

    Czy wiesz, że rzeźbiarz grecki Lizyp był nadwornym portrecistą Aleksandra Wielkiego?
    http://pl.wikipedia.org/wiki/Lizyp

    pokaż komentarz
    informatyk
  • Krfk -2  

    Dokładnie: wystarczy że serwer porówna ostatnio zapostowany przez siebie komentarz z aktualnie wysłaną zawartością. Nie wiem, jak mocno obciąża to bazę danych, ale taką metodę stosuje się przecież na forach dyskusyjnych.

    pokaż komentarz
    Krfk
  • aql 0  

    serwer sprawdzi. lol, rozbiłeś mnie. Wiesz jak działa porównywanie treści? Kolejne literki obu stringów są przebiegane w pętli i porównywane są ich kody ascii(zaraz po porównaniu długości). Na stronie z 10 komentarzami na godzinę działa wyśmienicie, na wykopie, gdzie w ciągu minuty dodawane jest kilkadziesiąt (a może i kilkaset) komentarzy na minutę wywołałoby to paraliż jak swego czasu było na portalu nasza-klasa. Kod dla dużych portali musi być optymalny Lepszym rozwiązaniem byłoby porównywanie hash kodów, najlepiej gdyby były one wyliczane po stronie klienta a nie serwera. Zresztą, przedpiścy piszą o sposobach radzenia sobie z podwójnym wysyłaniem POST-a, więc nie widzę problemu.

    pokaż komentarz
    aql
  • Guru +26  

    specjalnie porozwijałem wszystkie Twoje komentarze żeby móc Cie zminusować xD

    pokaż komentarz
    Guru
  • br0war -3  

    Moze cos sie wkoncu ruszy

    pokaż komentarz
    br0war
  • wojtekmaj +104  

    O matko. Nie skupiałem się na podawaniu doctype i pisania znaczników br zgodnie z jakimiśtam standardami, tylko na tym co jest w wartości parametru onclick, czyli esencji całego rozwiązania.

    pokaż komentarz
    wojtekmaj
  • Tavaro +80  

    Errors, tja? A po kiego deklarować kodowanie, doctype, title itd w prostym pliczku, który ma być tylko przykładem? x-/ Rozbrajają mnie ludzie, dla których validator jest bogiem.

    E: no i mnie ubiegli.

    pokaż komentarz
    Tavaro
  • voldenet +21  

    Błędny kod (bez jakichś zbędnych tagów doctype itp.) działa na wszystkich cywilizowanych przeglądarkach świata, a na IE "poprawny" kod robi błędy.

    pokaż komentarz
    voldenet
  • Sh1eldeR +42  

    [dygresja tylko dla zainteresowanych pisaniem kodu]

    Owszem, to tylko przykład -- jego kod, nawet uwzględniając samo onClick, jest zdecydowanie zbyt niskiej jakości jak na Wykop. Używanie onclick śmierdzi przy dużych, profesjonalnych projektach, gdzie kod powinien być uporządkowany i rozdzielony na warstwy. W tym przykładzie zastosowano pomieszanie najgorsze z możliwych ;-) -- w warstwę struktury (HTML) wpleciono nie tylko zachowanie (JavaScript), ale i prezentację (CSS poprzez this.style...). Pewnie wstawienie tej jednej rzeczy w kod wykopu najbardziej zaszkodziłoby elegancji jego kodu, ale gdyby wszystko było tu napisane w ten sposób, utrzymanie kodu tak dużego serwisu byłoby koszmarem.

    W przypadku Wykopu należałoby to zaimplementować nieinwazyjnie, czyli przy użyciu DOM. A witryna korzysta z jQuery, które otacza DOM prostymi i przyjaznymi funkcjami, byłoby to bardzo proste.

    Coś w stylu (ostrzegam, że piszę na pałę i bez testowania :)):

    $('#wykop-comment-form .submit-button').click(function(ev) {
    $(this).attr('disabled', 'disabled').addClass('submit-button-disabled');
    });

    +deklaracje dla reguły #wykop-comment-form .submit-button-disabled w arkuszu stylów. Może komuś, kto nie zajmuje się tworzeniem bardziej skomplikowanej stron o wyższych normach jakości takie coś wydaje się przestrzeleniem, ale dla tych developerów, którym zależy, jest to naturalne (i bardzo pomocne).

    Nie oznacza to jednak, że autor wykopu tych rzeczy nie wie, czy że w uporządkowany kod faktycznie wstawiłby onclick. Chodzi o sam pomysł, a nie o szczegóły implementacji, które należy zostawić developerom wykopu. Tworzenie dema napisanego porządnie, z oddzielnym arkuszem CSS, oddzielnym plikiem ze skryptem i -- wcześniej -- z importowaniem jQuery byłoby co najmniej przestrzeleniem. Autor straciłby na to o wiele więcej czasu, niż developerzy by zyskali.

    @voldenet:
    Poniekąd masz rację, ale by nie wprowadzać ludzi w błąd, warto dodać, że poprawny kod również zadziała na wszystkich cywilizowanych przeglądarkach świata. Nawet tych przyszłych, czego o niepoprawnym kodzie nie można powiedzieć. Dlatego należy najpierw stworzyć kod poprawny (najwyżej ograniczając bardziej zaawansowane funkcje), a następnie dodać "hacki" widoczne tylko dla danej przeglądarki (Której Nazwy Nie Muszę Wymieniać).

    Co więcej, nie masz całkowitej racji: niepoprawny kod, w tym brak DOCTYPE-a, faktycznie często sprawia kłopoty, które potem autorzy muszą kompensować, pisząc więcej niepoprawnego kodu (i każdy z tych błędów może powrócić w przyszłości). Brak DOCTYPE-a lubi wprowadzić przeglądarki w tryb "quirks", w którym choćby podstawowy model pudełkowy CSS jest liczony zupełnie inaczej niż powinien.

    ---

    To są może kwestie ideowe, ale myślę, że nie warto ich zaciemniać i nie warto się zasłaniać nieprawdziwymi argumentami -- że pisanie złego kodu jest dobre. Nie jest i nie będzie. Fakt, zły kod musimy czasem dopisać do dobrego, by coś tam w Wiadomo Jakiej Przeglądarce zadziałało. Ale to powinno się odbywać w tę stronę. Tak samo nie opłaca się klepać kodu na pałę i mieszać trzech warstw jednym miejscu, jeśli dotyczy to strony dłuższej niż parędziesiąt linii kodu...

    ...no właśnie. Tu jednak mamy do czynienia z przykładem na parę linijek. Oczywiście nie propaguję rozwiązań dokładnie takich, jakie przedstawił autor, ale i on sam zapewne nie zakodowałby tego w ten sposób na wypuszczonej stronie. Nie można wieszać psów na autorze, bo to nie sprzyja podawaniu nowych pomysłów, zgłaszaniu bug-reportów itp.

    Ale z drugiej strony takich sytuacji nie traktujmy jako okazji do narzekania na dobry kod i promowania złego. Sklecenie idealnie napisanego przykładu wydłużyłoby czas jego tworzenia pewnie z dwu-trzykrotnie. Ale dopisanie dobrego kodu do dobrej strony nie spowodowałoby takiego wzrostu. Bo:
    1) jQuery już tu jest
    2) Zewnętrzny plik ze skryptami też i założę się, że ma nawet przygotowane miejsce, gdzie można wstawiać takie rzeczy
    3) HTML-a w ogóle nie trzeba by zmieniać.

    Szczególnie ten ostatni punkt może sprawić, że wstawienie porządnego kodu byłoby na wykopie szybsze, szczególnie jeśli developer JavaScriptowy nie ma bezpośredniego dostępu do HTML-a i jego zmiana musiałaby być zatwierdzona przez inną osobę. Śmiejcie się śmiejcie, ale takie bywają procedury przy kodowaniu zespołowym (i dobrze, że jakieś są ;-)).

    [/koniec dygresji]

    A co do samego pomysłu, to jestem jak najbardziej za. Wyłączanie przycisków formularza po kliknięciu jest super, zresztą pisali już o tym w niejednej książce o usability (np. knidze panów z 37signals "Przyjazne witryny WWW").

    pokaż komentarz
    Sh1eldeR
  • fourtyfour +3  

    po co tak? A nie można po dodaniu pierwszego komentarza zapisać w sesji na serwie jego hash'a, a potem przy dodaniu kolejnego sprawdzić czy hash'e się zgadzają? Jeżeli takie same - dublet - nie dodawaj, else - dodawaj. Tak bym to machnął.

    pokaż komentarz
    fourtyfour
  • Sh1eldeR +2  

    @fortyfour:
    Dobry pomysł, choć nie mam wystarczająco dużego doświadczenia w tworzeniu kodu po stronie serwera dla dużych, high-endowych serwisów, bym mógł sugerować tutaj jakieś konkretne rozwiązanie.

    Tak naprawdę to niemal każde rozwiązanie javascriptowe powinno być wsparte po stronie serwera, bo JS nie zapewnia żadnego bezpieczeństwa i w ogóle nie musi być włączony. Jest tylko dodatkowym ułatwieniem, nakładką, zgodnie z ideą nieinwazyjnego JavaScriptu (unobtrusive javascript).

    A właśnie -- pytasz czemu tak. Ano temu, żeby użytkownikom było łatwiej. Ten drobny JavaScript zadziała natychmiast: od razu po kliknięciu przycisku zostanie on odłączony, co uniemożliwi dublowanie komentarzy poprzez wielokrotne (potencjalnie przypadkowe) kliknięcia. Dzięki JavaScriptowi użytkownik od razu zobaczy, że kliknięcie zostało mu zaliczone (bo przycisk się wyszarzy; ew. można jeszcze z boku dodać komunikat "czekaj...", czy coś) i nigdy nie zobaczy błędu wygenerowanego przez kod po stronie serwera. A raczej zobaczy go tylko wtedy, gdy będzie miał wyłączony javascript, czyli... rzadko, o ile w ogóle.

    pokaż komentarz
    Sh1eldeR
  • fourtyfour 0  

    Sh1eldeR: git. Tylko mi bardzo często zdarza się, że dodaje komentarz i wyświetla się blank page. Nie wiem co się wtedy stało, dublet najczęściej powstaje gdy cofam się/daję naprzód i przeglądarka prosi o ponowne wysłanie posta. Rozwiązanie które podałem minimalnie obciąża serwer. A to, plus rozwiązanie nostrzak'a, eliminuje problem.

    pokaż komentarz
    fourtyfour
  • Zizii +1  

    szanowni państwo - a wiecie, że tam, za oknem, ładnie świeci słońce? i że piękne kobiety chodzą? Tak! dokładnie tam! za firewall'em!!

    pokaż komentarz
    Zizii
  • Qminator -7  

    na Chrome nie działa

    pokaż komentarz
    Qminator
  • M3x +4  

    Działa.

    pokaż komentarz
    M3x
  • zwierzak2003 0  

    Pytanie czego się oczekuje od działania.

    pokaż komentarz
    zwierzak2003
  • demolition -9  

    Mi się udało opracować taki mechanizm, służący blokowaniu wywołania jeszcze raz POST po odświeżeniu przeglądarki !!! wykorzystywany do dzisiaj na jednym z wydziałów uniwersytetu i wszystko w PHP. Może admini wykopu zgłoszą się do mnie na maila:)

    A co do JQuery, to chyba nie byłoby większego problemu tego zaimplementować:)

    pokaż komentarz
    demolition
  • nostrzak +9  

    Ty to jestes.

    pokaż komentarz
    nostrzak
  • m010ch -9  

    Chrome 2.0.156.1 - nie działa. Zakop.

    pokaż komentarz
    m010ch
  • kastrat +6  

    ajjj szkoda było tak miło... "Możesz oddać 20 głosów w przeciągu 15 minut."

    pokaż komentarz
    kastrat
pokaż 

Wykopali i zakopali (259 / 26)