Hallo,
Ik heb een scriptje gemaakt dat emailadressen uit een fouten.dxb file haalt.
Ik wil nu namelijk maar eens af van alle foutmeldingen van niet meer
bestaande emailadressen uit mijn mailinglijst. Ik krijg daar steeds een
foutmelding van en die komen in een map fouten, vandaar dat ik die wil
uitlezen.
onderstaandscript werkt...deels
<?php
$fd = fopen("fouten.dxb","r");
while (!feof($fd)):
$regel = fgets($fd, 4096);
$opsplitsen=explode(" ",$regel);
$regel="";
for($i=0;$i<sizeof($opsplitsen);$i++)
{
if(eregi("^.[a-zA-Z0-9_.\.-]+@[a-z0-9_]+\\.[a-z]+",$opsplitsen[$i]))
{
$opschonen = ereg_replace('<','',$opsplitsen[$i]);
$opschonen = ereg_replace('>','',$opschonen);
$opschonen = ereg_replace(';','',$opschonen);
$opschonen = ereg_replace('\(','',$opschonen);
$opschonen = ereg_replace('\)','',$opschonen);
//klaarmaken om het domein te herkennen
$domein1 = explode("@",$opschonen);
$domein2 = explode(".",$domein1[1]);
//als het emailadres van mijn site cq de hosting server is....niets doen
if($domein2[0]!="beursanalyse" && $domein2[0]!='starfish' &&
$domein2[0]!='gold')
{
//even explode op & omdat er soms adressen in een link staan met een ID
nummer er achter.
$email = explode("&",$opschonen);
$output = strtolower($email[0]);
$vullen[]=$output;
//echo"\n<br>".$output;
}
}
}
endwhile;
sort($vullen);
$telvullen = count($vullen);
for($j=0;$j<$telvullen;$j++)
{
//print een emailadres maar 1 keer uit door te controleren of de voorgaande
en volgende array hetzelfde is
if($vullen[$j-1]!=$vullen[$j] && $vullen[$j]!=$vullen[$j+1])
{
echo"\n<br>".$vullen[$j];
}
}
//gooi de file weer dicht
close(fd);
?>
Ik heb alleen gemerkt dat niet alle adressen er uit worden gevist. Zo wordt
iets met bijvoorbeeld <a href="mailto:jemoer@hierduseenemail.info"> niet
opgemerkt. Op zich logisch, want ik laat de boel ploffen op " ".
Verder krijg ik soms achter een emailadres drie puntjes "..." of een ":"
(direct aan het adres) of dit soort troep: h? of .°r of n`» en ga zo
maar door.
Heeft iemand een idee hoe ik een beter opdracht kan geven tot het vinden van
emailadressen en deze dan ook correct uit de file kan halen?
Groeten,
Matthijs

Likes:

Quote
?:\r\n)?[ \t])*(?