Avatar billede darkstylerdk Nybegynder
14. maj 2009 - 11:16 Der er 3 kommentarer og
1 løsning

Finde emailadresser i indtastet tekst

Jeg står og modtager en hulens masse spam som jeg naturligvis gerne vi af med.
Som det ser ud nu får jeg en webside med alle spam-info listet op. Direkte indsat som tekst ser det således ud:

spam     serenerdgm6@huntleighchase.com
Increase your Manhood     2009-05-08 23:49:30
spam     expostulatediob7@investllc.com
You can do a lot more with a Submariner SS watch.     2009-05-08 23:04:09
spam     luausl856@kristianbeck.com
Free Acai diet sign up now     2009-05-08 21:58:15
spam     fishhooksmh46@shopluckyloublog.com
Viagra (Sildenafil) 100mg x 90 pills $159.95 price     2009-05-08 21:37:35
spam     upholstererw@joshmcgilberry.com
Price for Viagra (Sildenafil) 100mg x 60 pills $129.95     2009-05-08 20:18:37
spam     avoidablyda4@aubejp.com
Highly nutricious Acai Berry available now! get your free trial now     2009-05-08 17:41:41
spam     benefitting2@secondsun.org
We deliver quality software worldwide - no matter where you are.     2009-05-08 16:40:12





Fra denne tekst plejer jeg så at finde alle domænerne og tilføje dem på black-listen. I ovenstående tilfælde ville jeg indtaste følgende i mit admin-panel:
"@huntleighchase.com,@kristianbeck.com,@joshmcgilberry.com,@aubejp.com,@secondsun.org" (uden citationstegn)


Er det muligt at lave et php-script der finder domænerne (inkl. @) og samler dem - altså komma-adskilt?
Avatar billede zkill Nybegynder
14. maj 2009 - 17:15 #1
Jah kan du nemt.. :)
du kan bruge req udtryk til dette:

$pattern = '/[a-zA-Z0-9_\.\-]+(@[a-zA-Z0-9_\-]+\.[a-zA-Z]+)/';
$subject = Din string af emails her.
preg_match_all($pattern, $subject, $arrayResult);

og som resultat får du alle fund i $arrayResult.

gå ind og læs lidt om hvordan preg_match_all virker..
og jeg er ik sikker på mit Req-udtryk er helt rigtigt.. du kan sikkert finde et for emails på google.. jeg skrev bare lige ud fra den blå luft.. så sikkert lidt forkert..

for at liste dine spam mails i , adskilte.. jah så lav et loppe over arrayet og udskriv... eller er der vist en function der ka gøre det.. husker ik :) men den lette del hehe..
Avatar billede darkstylerdk Nybegynder
14. maj 2009 - 18:17 #2
Fedt

Hvis jeg får et færdig script er der points :)
Avatar billede zkill Nybegynder
15. maj 2009 - 11:34 #3
Ved godt det nemmer når folk gør ting for en.. men hvis du kan lidt php, så brug da tid og løs på det..
Det ville ha taget dig 5min, ud fra det jeg havde skrevet til dig..
Men jah, ved ik hvor god du er til IT.. så derfor får du hjælpen..

<?
$spamsText = 'spam    serenerdgm6@huntleighchase.com
Increase your Manhood    2009-05-08 23:49:30
spam    expostulatediob7@investllc.com
You can do a lot more with a Submariner SS watch.    2009-05-08 23:04:09
spam    luausl856@kristianbeck.com
Free Acai diet sign up now    2009-05-08 21:58:15
spam    fishhooksmh46@shopluckyloublog.com
Viagra (Sildenafil) 100mg x 90 pills $159.95 price    2009-05-08 21:37:35
spam    upholstererw@joshmcgilberry.com
Price for Viagra (Sildenafil) 100mg x 60 pills $129.95    2009-05-08 20:18:37
spam    avoidablyda4@aubejp.com
Highly nutricious Acai Berry available now! get your free trial now    2009-05-08 17:41:41
spam    benefitting2@secondsun.org
We deliver quality software worldwide - no matter where you are.    2009-05-08 16:40:12 ';

$pattern = '/[a-zA-Z0-9_\.\-]+(@[a-zA-Z0-9_\-]+\.[a-zA-Z]+)/';
preg_match_all($pattern, $spamsText, $regs);

$spamList = implode(', ', $regs[1]);
echo $spamList;
?>

eks. kan ses på httt://www.ziz.dk/test/
Avatar billede zkill Nybegynder
15. maj 2009 - 11:35 #4
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester