30. april 2003 - 19:46
#3
<?
$server = "192.168.100.104";
$port = "110";
$user = "mail@mail.dk";
$accesscode = "xxxxxxx";
$fp = fsockopen($server, $port) or die("pis");
$foersteLinje = fgets($fp, 1024);
fputs($fp, "USER $user\r\n") or die("fejl");
$andenLinje = fgets($fp, 1024);
fputs($fp, "PASS $accesscode\r\n") or die("fejl");
if (substr(fgets($fp, 1024), 0, 3) != "+OK") {
error($s_wrongPassword, 1, 1);
}
fputs($fp, "STAT\r\n");
$ebreve = fgets($fp, 1024);
$ebreve = split(" ", $ebreve);
$antalEbreve = $ebreve[1];
if ($antalEbreve == 0) {
echo "Ingen email\n";
}
for ($i = $antalEbreve; $i >= 1; $i--) {
fputs($fp, "TOP $i 0\r\n");
$prior = 3;
while (substr($line = fgets($fp, 1024), 0, 2) != chr(13).chr(10)) {
if (substr($line, 0, 9) == "Subject: ")
$subject = htmlspecialchars(substr($line, 9));
if (substr($line, 0, 6) == "From: ")
$fra = htmlspecialchars(substr($line, 6));
if (substr($line, 0, 6) == "Date: ")
$dato = htmlspecialchars(substr($line, 6));
if (substr($line, 0, 12) == "X-Priority: ")
$prior = htmlspecialchars(substr($line, 12, 1));
if (substr($line, 0, 8) == "Status: ")
$status = htmlspecialchars(substr($line, 8, 1));
if (substr($line, 0, 3) == "+OK") {
$stoerrelse = split(" ", $line);
$stoerrelse = $stoerrelse[1];
# If the size information is available:
if ($stoerrelse && $stoerrelse != "\r\n") {
$stoerrelse = $stoerrelse / 1024;
$stoerrelse = number_format($stoerrelse, 1);
$stoerrelse = str_replace(".", $s_decimalDelimiter, $stoerrelse);
$stoerrelse = "$stoerrelse $s_kb";
}
else {
# Some POP3 servers don't show the file size of the message.
# Therefore, we'll just write a hyphen instead of the file size.
$stoerrelse = "-";
}
}
}
}
?>