Newsgroup: it.comp.www.php
Titolo: Confrontare date, ergo sto impazzendo!!

Ciao ragazzi,
mi trovo nella seguente situazione.
Mi sono creato un piccolo forum. I messaggi vengono salvati in un
database Mysql contenente il messaggio, la data di pubblicazione
(formato date("j/n/Y")), l'ora di pubblicazione (formato date("H:i")),
e l'indizzo ip del postante.
Visto che negli ultimi tempi sono stato follemente assalito dallo spam
vorrei implementare un semplice script che mi effettui un confronto
fra l'ora e l'ip dell'indirizzo postante e quelli del nuovo messaggio
(questo anche per evitare i doppi inserimenti).
L'idea era quella di usare la funzione explode() per separarmi i vari
dati nel database e confrontarli col mktime()... Solo che non ci sto
capendo più niente! E' tutta la notte che ci sto rimuginando e qualche
minuto fa ho avuto la visione di un bicchiere di thé freddo col
ghiaccio che tintinnava e Dan Peterson che mi diceva "Lipton Ice Tea,
per me numero 7"... qualcuno mi potrebbe aiutare prima che impazzisca
del tutto?
grazie,
MarzianoDotNet

Per riassumere: ciò che mi servirebbe è impedire ad un determinato IP
di postare un nuovo messaggio entro 30 secondi da quello
precedente!...

 
time(),
$_SESSION
e gli operatori di sottrazione e confronto dovrebbero esserti 
sufficienti per risolvere.
-- 
doh!

 precedente!...
Per evitare il posting multiplo di un form, potresti avvalerti di una 
funzione usata dalla buonanima Setec, all'indirizzo:
http://setecastronomy.redirectme.net/index.php?page=functions&type=detail&IDContent=47
Nel caso potresti partire da qui per lavorarci un po' su e adattarla di 
più alle tue esigenze.
--
rob4you

 funzione usata dalla buonanima Setec, all'indirizzo:
Setec è deceduto?

> Setec è deceduto?
Secondo me si. :-)
Tempo fa ho provato anche a cercare gli annunci di morte nel periodo di 
maggio 2006 a Gonars, provincia di Udine.
Il periodo si riferisce all'ultima comparsa pubblica del vecchio Setec, 
in questo e in tutti gli altri ng che frequentava appunto maggio 2006.
La città la ho ricavata dalla whishlist che setec aveva su Amazon:
http://www.amazon.com/gp/registry/registry.html/002-0944485-9580044?id=2Y7YVXZ9VI1UP&items-per-page=25&sort=priority&filter=3&reveal=unpurchased&x=8&y=6
 
(sulla sinistra è visibile appunto la località).
La sua casetta è visibile all'indirizzo:
http://setecastronomy.redirectme.net/images/ide.jpg
E ora un piccolo excursus.
Vi ricordate la moda di qualche anno fa, in cui sbocciavano ogni giorno 
siti che promettevano di regalare un cellulare a 34 euro?
Beh, uno di questi, forse quello che raggiunse in breve la massima 
notorietà, era 
www.trentaquattroeuro.com
.
Questo sito arrivò in breve tempo a contare migliaia di iscritti, che 
avevano pagato la somma di 34 euro sperando di ricevere il cellulare.
Secondo la perversa quanto banale logica piramidale, quelli che 
effettivamente ricevettero io cel furono si e no qualche centinaio, non 
di più, con un evidente guadagno per il titolare del sito.
Questo sito, come tutti gli altri che facevano la stessa cosa, furono a 
un certo punto posti sotto sequestro dalla polizia di stato o dalla 
guardia di finanza (tempo fa se andavate su quel sito avreste trovato 
al sup posto il temibile logo della guardia di finanza, adesso invece 
non è rimasto proprio più niente).
Il proprietario del sito (vero o inventato) 
trentaquattroeuro.com
 era 
un tale:
giorgio dorio
via masin 6
buja, UD 33030
IT
Come vedete qui c'è una piccola analogia con il vecchio Setec, in 
quanto anch'egli è (era) della provincia di Udine.
Ma c'è di più: se andate sulla home page di setec 
(
http://setecastronomy.redirectme.net/index.php?page=home
), noterete 
presto che egli è l'inventore del cosiddetto "yoda template engine" 
(
http://setecastronomy.redirectme.net/index.php?page=yoda
).
Perché vi ho detto questa notizia?
Bene, perché il sito 
trentaquattroeuro.com
 era sviluppato da un tale 
che si faceva chiamare "yoda" :-) ....
Ora, non dico che Giorgio Dorio e Setec Astronomy siano la stessa 
persona, ma sono quasi convinto che una relazione tra i due ci sia 
(tipo una sorta di relazione cliente-amico/programmatore).
Trovato Giorgio Dorio (sempre che non sia in carcere) con tutta 
probabilità equivarrà a trovare Setec Astronomy (o le sue ceneri). :-)
--
rob4you

 rob4you
Grazie a te e a Magilla ho risolto (grazie anche al Setec che non
conosco ma di cui a questo punto spero anch'io il ritorno! ;-))! Tanto
semplice quanto geniale l'idea delle sessioni.
Già che ci sono vi faccio un'altra piccola domanda. Visto che sono in
vena di contrastare lo spam volevo farmi anche una piccola blacklist
in un file txt - per esempio - organizzato in questo modo:
64.246.165.190;
66.194.6.84;
217.220.120.147;
Come faccio ad impostare un ciclo che me lo esploda e mi paragoni uno
per uno al  $_SERVER['REMOTE_ADDR'] ?
Grazie di nuovo, poi giuro che "scomparo" ;-)
Marziano

 per uno al  $_SERVER['REMOTE_ADDR'] ?
Non ti conviene lavorare sull'ip remoto, per il semplice fatto che esso 
può variare. Oggi ho indirizzo ip xxx.xxx.xxx.xxx. Domani potrei avere 
indirizzo ip yyy.yyy.yyy.yyy. E' il concetto di ip dinamico, largamente 
usato nel mondo di internet.
Per prevenire lo spam, potresti leggere in questo stesso ng dei 
messaggi (magari cercarli su google-gruppi) a riguardo. Luca(riello) 
parecchi mesi fa, segnalò un metodo carino per chiudere la porta al 99% 
degli spammer. Se riesci a trovare quel thread, vedrai l'idea e tutti i 
nostri contributi.
Se comunque ti interesserebbe usare comunque il file di blacklist degli 
ip, potresti eseguire nell'ordine le seguenti operazioni:
1) leggere il file "incriminato" con la funzione file (o 
file_get_contents);
2) controllare se l'indirizzo $_SERVER['REMOTE_ADDR'] è contenuto nel 
file (tramite l'operatore == qualora confronti ogni valore, se cioè hai 
letto riga per riga del file con la funzione file(), o tramite la 
funzione strpos se effettui hai letto il file con file_get_contents()).
--
rob4you

 rob4you
Grazie a te e a Magilla ho risolto (grazie anche al Setec che non
conosco ma di cui a questo punto spero anch'io il ritorno! ;-))! Tanto
semplice quanto geniale l'idea delle sessioni.
capcha
(quelle immagini con un numero da scrivere)

Grazie mille, rob4you! A questo punto mi faccio rispondere da lui
------------------------------------------------
su 
hombresdemar.altervista.org/guestbook.php
 c'è l'output...
Occorre un minimo di javascript (le funzioni sono nell'head) e di php
c'è
solo il timestamp nell'input nascosto.
Lato server il controllo è di questo tipo:
// se ce la fa in meno di 15 secondi è un bot
if(time()-$_POST['tempo']<15) die("spam");
//se l'onkeydown non è chiamato nemmeno una volta, è un bot
if($_POST['contaparole']==0 || $_POST['contautore']==0) die("spam");
alla pagina spam.txt dello stesso dominio, ci sono tutti i messaggi
catturati nell'ultimo mese :)
ciao,
Luca(riello)
PS: Poco ci vuole per un bot, penso, richiamare l'onkeydown... ma
finora
nessuno lo fa.
------------------------------
Ammetto che un po' più di codicillo farebbe comodo, ma vediamo di
lavorarci su...
grazie!
Marziano

Hai trovato esattamente ciò che ti dicevo io. Very good! :-)
Tieni presente comunque che:
1) il controllo sui 15 secondi secondo me è parecchio eccessivo: tu 
stesso puoi provare a scrivere sul guestbook di quel sito; molto 
probabilmente ce la farai anche prima dei 15 secondi, ma questo non 
vuol dire che fai spam. Quindi io abbasserei il limite dei secondi
2) oltre all'evento onkeydown, puoi associare anche l'evento onclick 
e/o onfocus (in modo da andare a "completare" l'evento onkeydown)
Tieni presente PERO' che in questo modo, se tu ad esempio:
- apri Microsoft Word (o anche Blocco Note, o quello che vuoi per 
scrivere)
- scrivi un qualsiasi testo (tipo il classico "HELLO WORLD", o anche la 
Divina Commedia) :-)
- selezioni il testo appena scritto e fai copia
- fai sulla pagina web con controllo antispam e fai incolla (dal menu 
Modifica)
Beh, così facendo l'evento onkeydown oppure onclick non saranno mai 
scatenato, quindi il tuo messaggio sarà classificato come spam. Idem 
per l'evento onfocus se la textarea avesse già su di sé il fuoco.
Una soluzione potrebbe essere avere, oltre a un campo textarea (in cui 
inserire il messaggio vero e proprio), anche un altro campo, in cui 
l'utente debba inserire un altro dato, tipo il proprio nick 
(difficilmente anche del proprio nick l'utente farà copia e incolla da 
un editor di testo esterno).
Probabilmente si potrebbero fare anche altri miglioramenti, ad esempio 
lavorando sul submit.
Ad esempio al posto dell'input type="submit" si potrebbe usare un 
type="image" che dovrebbe inviare anche le coordinate x e y del punto 
cliccato sull'immagine. Controllando che queste coordinate ci siano, e 
che siano compatibili con la dimensione dell'immagine, forse si 
potrebbe elaborare un'aggiunta ai metodi antispam su visti.
Soltanto il tempo, e gli attacchi bloccati, ma soprattutto quelli non 
bloccati, riusciranno a far capire come procedere per trovare una 
soluzione veramente efficiente.
--
rob4you


 (quelle immagini con un numero da scrivere)
I CAPTCHA (non capcha) sono sicuramente un'altra alternativa alla 
"lotta alla criminalità". :-)
Tieni presente però che:
1) gli spam-bot più elaborati riescono anche a leggere il testo 
contenuto nelle immagini (in pratica non serve niente altro che un OCR 
per far ciò)
2) per essere veramente efficace, un CAPTCHA dovrebbe essere l'immagine 
di un testo molto distorto. Ragione per la quale spesso anche agli 
umani risulterebbe di difficile comprensione
3) a ciò si aggiunge che per gli umani potrebbe essere alquanto noioso 
dover risolvere ogni volta il CAPTCHA. Se a visite occasionali ciò non 
implica una noia, ti assicuro che lo è per visite frequenti.
A questo proposito, il motore di ricerca per eccellenza, Google, ha un 
sistema di CAPTCHA davvero ODIOSISSIMO (per fortuna alla maggiorparte 
di voi non sarà capitato di imbattersi): io, che ho Fastweb come 
fornitore di servizi Internet, faccio parte di una maxi rete privata, 
che accede al mondo esterno tramite dei router di bordo.
Il problema è che spesso, quando faccio una richiesta a Google, la mia 
richiesta NON può essere soddisfatta, perché Google mi dice che dal mio 
indirizzo IP (che in realtà non è solo il mio indirizzo IP, ma è lo 
stesso indirizzo IP con cui accedono al mondo esterno migliaia di altri 
utenti fastweb) stanno provenendo richieste "strane" con worms e virus.
Per proseguire sono costretto a inserire, per ogni richiesta (anzi a 
volte anche più volte per ogni richiesta) l'odiosissimo testo del 
CAPTCHA. Mai come in questo periodo sto odiando i CAPTCHA. :-)
Un'alternativa ai CAPTHCA, che richiede più o meno lo stesso 
sbattimento da parte dell'utente, ma ha il vantaggio che per gli umani 
è davvero facilissima da risolvere (a differenza di quanto può esserlo 
un CAPTHCA ben fatto), mentre per un robot è complesso, è inserire 
qualcosa del tipo:
"inserisci a numero quanto fa cinque più quattro"
Per un umano è immediato dare la risposta "9", per un robot, al momento 
direi che è pressoché impossibile.
Un altro vantaggio di questa scelta rispetto ai CAPTHCA è che non 
richiede librerie e copmlessi algoritmi per la generazione di testo 
distorto in un'immagine.
Richiede infatti soltanto una collezione di domande, con la relativa 
risposta. Domande che, restando semplici, possono essere formulate in 
vari ambiti (tipo: "digita l'iniziale della parola CASA", oppure 
"quanti minuti ci sono in un'ora?"). :-)
--
rob4you
www.outofmind.eu

 (tipo una sorta di relazione cliente-amico/programmatore).
Guarda, se la relazione è solo quello 'yoda', dato il numero di fan di
Guerre Stellari, credo sia un po' pochino per avere qualche sicurezza.
Probabilmente già l'avrai visto, ma qui:
http://www.alibaba.com/member/giorgiodorio/contactinfo.html
http://www.alibaba.com/company/10233191.html
Giorgio Dorio (Giorgio Stefano?) è uno strano israeliano di... Padova.
Qui è di Treviso: 
http://www.anjichairs.com/codata/10293809.htm
(essendo evidentemente un truffatore, è mooolto probabile che sia sempre
lo stesso GD di cui parli anche tu, anche se non è certo)
Detto questo, mi sono un attimo sorpreso, guardando qui:
http://web.archive.org/web/*/http://jewellery.it
http://web.archive.org/web/*/http://castelarredo.it
http://web.archive.org/web/*/http://orientsea.it
Maggio 2006: una specie di crackdown per i vari Guido Doria! ;-)
Tuttavia, a parte questa data, non vedo altri /link/ con Setec...
Ciao.
Maverick (che non aveva di meglio da fare ;-D)
ps. è strano anche che un /plurimilionario/ faccia certe cose:
http://web.archive.org/web/*/http://omniconsult.net
 e, soprattutto,
http://nostalgia.theshoppe.com/
 ... LOL :-)
pps. eventualmente continuiamo in pvt?

 Maggio 2006: una specie di crackdown per i vari Guido Doria! ;-)
s/Guido Doria/Giorgio Dorio/ ... :-/
Capisco 'Doria' (ancora non ho cenato), ma Guido da dove m'è uscito? :-?
Ciao.
Maverick
-- 
«Che non siete più liberi di non avere una casa con letto per dormire.
 Lavorate voi - schiavi dei soldi - che non sentite la puzza della
 schiavitù!» (a Mario di Monte Mario, Roma) # 
http://libre.netsons.org/

 pps. eventualmente continuiamo in pvt?
Se temi che da qui ci possano cacciare :-), volentieri, ho sempre 
sognato di fare l'investigatore privato. :-D
--
rob4you

 s.r.l.
Ah, tanto per fugare ogni dubbio sulla provenienza del sito 
www.34euro.co.uk
, collegandosi al sito: 
http://whois.xreg.co.uk/
 e 
inserendo il dominio 
34euro.co.uk
, indovinate un po' chi salta fuori?
Registrant: GIORGIO DORIO
Registrant's address:
        via masin 6
        buja
        UD
        33030
        Italy
Certo che questo Dorio potrebbe scrivere un libro su come fare soldi 
fregando la gente.
--
rob4you

 la gente.
E magia delle magie, se la guardia di finanza ha bloccato il sito 
www.trentaquattroeuro.com
, altrettanto non ha fatto per:
http://www.34euro.co.uk/
Voi direte che cliccando sul link "entra" si viene rediretti altrove, 
ma....provate invece con:
http://www.34euro.co.uk/trenta_it/index.asp
Il sito c'è, immacolato come lo è sempre stato!!! :-)
E da lì si può vedere anche quanta gente è riuscita a truffare: più di 
4000 persone!!!
A 34 euro ciascuno....fate un po' voi i conti di quanto ha guadagnato 
in pochi mesi. Spero li abbia restituiti tutti fino all'ultimo 
centesimo quei soldi.
--
rob4you

 sognato di fare l'investigatore privato. :-D
E non è che per caso ti sei mai chiesto anche come si può inviare
un'email in pvt a chi non ti dice il suo indirizzo? ;-P
In pvt o qui, comunque, a me interesserebbe capire che fine ha fatto
Setec, più che cercare info su GD: almeno Setec, finché nessuno si
lamenta, non è affatto OT su questo ng. :-)
Del resto, guarda qui la /grandezza/ di Setec:
http://web.archive.org/web/*/http://setecastronomy.redirectme.net/
prendi l'ultima versione (ovviamente, maggio 2006) e guarda il footer.
Poi vai sul sito attuale e riguarda il footer: anche dall'aldilà (o da
San Vittore? ;-D) riesce a modificare le pagine del sito! Immenso. ;o)
Ciao.
Maverick
ps. la Famoza srl esiste ed ha solo un ufficio (tenuta scritture
contabili) a Udine, mentre la sede legale è a Gorizia; esiste anche una
Omniconsult srl e anche se l'attività è abbastanza strana, non ha niente
a che vedere con Udine. Vedi su infoimprese.it...


 Secondo me si. :-)
ma lol!!! :-D
per me semplicemente e' stato traumatizzato da qualcosa di 
php(il yoda template engines non e' mai uscito!) e ora si e' 
dato al java!
http://forum.java.sun.com/thread.jspa?threadID=5128884&messageID=9467884#9467884
ciao
-- 
#Wizard Developer#
http://www.wizardtale.org

 
http://forum.java.sun.com/thread.jspa?threadID=5128884&messageID=9467884#9467884
 
ma sarà lui ... ;) ???
-- 
SEZIONE RECUPERO LAVORO: Lancio di una nuova lavatrice sul mercato, due 
morti e sei feriti.
[CapoBecchino] - hotmail/msn: capobecchino [@] hotmail [.] com

 ma sarà lui ... ;) ???
Caspita!!!!
Da quel link che ha segnalato Aragorn in effetti un setecastronomy 
esiste, e per di più è italiano (si firma Filippo infatti).
Per di più, il suo interesse per java era manifesto già in passato:
http://groups.google.it/groups/profile?show=more&enc_user=h2M9NBwAAAC2As2IBZ9jGA8G7KbKlszKfoph9Av1V3QbBuqf9JvfXQ&group=it.comp.java
Ma come si può vedere, la sua attività nel gruppo it.comp.java si ferma 
al marzo 2004.
Ma, un setecastronomy dal nome Filippo effettivamente esiste.
Ecco i messaggi che ha lasciato sul forum di ioProgrammo:
http://forum.ioprogrammo.it/search.php?boardid=18&searchid=2&showposts=1&sid=a53b62e6af673ba326368bbb57f70f4d
Da cui si evince che l'ultimo messaggio è di agosto 2006.
Ed ecco il suo profilo, ahimé, non c'è molto, solo la sua data di 
iscrizione (2 gennaio 2004, che coincide più o meno con il periodo in 
cui ha abbandonato il ng it.comp.java), e la sua classificazione come 
"novizio":
http://forum.ioprogrammo.it/members.php?mode=profile&userid=2997&boardid=18&sid=a53b62e6af673ba326368bbb57f70f4d
Sul forum ufficiale di java.sun, ecco il profilo di un tale 
setecastronomy di nome Filippo (ma non è detto che sia il nostro 
setec):
http://forum.java.sun.com/profile.jspa?userID=448179
Come si nota, la data di registrazione è di giugno 2004 (in linea con 
le altre), la sua attività è piuttosto bassa, ma cosa sbalorditiva:
c'è un incredibile salto temporale tra il quintultimo messaggio da lui 
scritto (19 dicembre 2005) e il quartultimo (25 gennaio 2007): più di 
un anno di completo silenzio (periodo di carcere) :-) !!
Una cosa però mi lascia perplesso sull'affinità tra il nostro setec e 
questo setec: tra di noi era abbastanza noto il suo atteggiamento 
"saccente" e a volte scontroso. In tutti questi messaggi invece sembra 
mooolto gentile, sempre, quasi fosse un'altra persona.
Inoltre, altra perplessità, è che il nostro setec non si è mai firmato 
con il suo nome, invece in tutti questi messaggi si firma sempre con il 
nome di Filipppo.
Ah, comunque, se avete sempre immaginato il nostro setec come un 
vecchio "saggio", ecco la chicca per pochi eletti: il suo primo 
messaggio sul ng it.comp.java, notate il suo tono affettuoso, quasi 
bambinesco:
http://groups.google.it/group/it.comp.java/browse_thread/thread/3cadac681bcfc9eb/3e0eeb706fe69870?lnk=gst&q=&rnum=2#3e0eeb706fe69870
Il messaggio è dell'11 luglio 2003, e setec si definisce qui un newbie 
di Java.
Continuando a spulciare nella sua "vita virtuale", da google groups si 
evince la sua passione per guerre stellari, vista la sua affiliazione 
ai gruppi it-alt.fan.starwars 
(
http://groups.google.it/groups/profile?show=more&enc_user=h5k-DBwAAADaifKHFvm4ndSDACJq9vIjfoph9Av1V3QbBuqf9JvfXQ&group=
) 
e it.fan.starwars 
(
http://groups.google.it/groups/profile?show=more&enc_user=h5k-DBwAAADaifKHFvm4ndSDACJq9vIjfoph9Av1V3QbBuqf9JvfXQ&group=it.fan.starwars
).
Da qui gli sarà venuta l'ispirazione di chiamare il suo template engine 
in php "yoda".
Intanto il mistero continua.
In ogni caso diverse possono essere le ipotesi sulla sua scomparsa:
1) è stato rapito da un disco volante
2) è finito in carcere
3) è morto
4) era lui stesso un alieno e dopo un periodo di permanenza sulla 
terra, cercando di confondersi con gli umani (cose che peraltro non gli 
è mai riuscita bene) è tornato nella sua galassia
5) è emigrato in un località priva di connessione internet (ma per lui 
emigrare in un posto simile, equivale a perire lentamente e 
inesorabilmente: uno con più di 4000 messaggi sul it.comp.www.php, non 
può sparire senza una ragione!)
6) varie ed eventuali
Setec, dovunque tu sia, se anche in paradiso arrivano i bit (magari con 
una connessione wireless di lunga portata), sappi che, seppur a ben 
vedere non eri quel genio unico e raro che volevi far credere, noi ti 
volevamo bene. :-)
--
rob4you

 a che vedere con Udine. Vedi su infoimprese.it...
Il bello è che nel sito della famoza 
(
http://www.34euro.co.uk/famoza/index.htm
), il tag meta "content" tra 
le keyword ha ancora la parola "dorio". In pratica il vecchio sito 
omniconsult.net
 by Giorgio Dorio, è stato preso pari pari e ne è stato 
cambiato il nome in Famoza s.r.l.. Inoltre si è evitato di mettere in 
evidenza il nome Giorgio Dorio, ormai sputtanato a destra e a manca. 
Però ci si è dimenticati di eliminarlo anche dalle keywords. :-)
--
rob4you

 6) varie ed eventuali
La 4 e la 1 mi sembrano estremamente improbabili.
Se la 2 e' vera allora in carcere non esiste il modo di 
collegarsi a internet? dai non ci credo!
La 3 no dai che tristezza!!
Speriamo nella 6!!

 Speriamo nella 6!!
E si speriamo, ma queste varie ed eventuali....non è che poi aprano la 
via a così tante altre possibilità. :-)
--
rob4you

 sulla sua pagina web, tale che gli restituisce l'ano corrente. ...
Sì, anche se con due enne :P, è quel che avevo pensato. ;-)
Ciao.
Maverick


 Sì, anche se con due enne :P, è quel che avevo pensato. ;-)
Ehm.....anche perché.....sarebbe stato un bel problema se gli avesse 
restituito l'ANO corrente! :-D
--
rob4you