>Info zum Stichwort php | >diskutieren | >Permalink 
Bettina Beispiel schrieb am 10.4. 2003 um 18:09:21 Uhr über

php

<?php
class smtp {

var $strStatus;
var $strSMTP;

function smtp()
{
$this->strStatus = '';
$this->strSMTP = 0;
}

function open($server, $port = 25) {
$this->strSMTP = fsockopen($server, $port);
if ($this->strSMTP < 0) return FALSE;
$line = fgets($this->strSMTP, 1024);
return $this->strSMTP;
}

function helo($strHost) {
fputs($this->strSMTP, »helo $strHost\r\n«);
$line = fgets($this->strSMTP, 1024);
return $this->getresult($line, 2);
}

function from($from) {
fputs($this->strSMTP, »MAIL FROM: <$from>\r\n«);
$line = fgets($this->strSMTP, 1024);
return $this->getresult($line, 2);
}

function to($to) {
fputs($this->strSMTP, »RCPT TO: <$to>\r\n«);
$line = fgets($this->strSMTP, 1024);
return $this->getresult($line, 2);
}

function data($subject, $data) {
fputs($this->strSMTP, »DATA\r\n«);
while ($line = fgets($this->strSMTP, 1024)) {
if ($this->getresult($line, 3)) break;
}
if ($this->getresult($line, 3)) {
fputs($this->strSMTP, »Subject: $subject\r\n«);
fputs($this->strSMTP, »$data\r\n\r\n«);
fputs($this->strSMTP, ».\r\n«);
$line = fgets($this->strSMTP, 1024);
return $this->getresult($line, 2);
} else {
return FALSE;
}
}

function quit() {
fputs($this->strSMTP, »QUIT\r\n«);
$line = fgets($this->strSMTP, 1024);
return $this->getresult($line, 2);
}

function getresult($line, $code)
{
$this->strStatus = substr($line, 0, 1024);
if (substr($this->strStatus, 0, 1) != $code) {
return FALSE;
} else {
return TRUE;
}
}

function showresult()
{
echo '<code style=»color:red«>';
echo $this->strStatus;
echo '</code><br>';
}



} /* end class pop3 */

$mybox = new smtp;
$smtpserver = 'smtp.kundenserver.de';
$pcname = 'myPC';
$fromname = 'phpbooksite@comzept.de';
$toname = 'm6241390-open@comzept.de';
$error = FALSE;
while (TRUE) {
echo 'Verbindung: ';
if (!$mybox->open($smtpserver)) {
echo »[FEHLER] Verbindung nicht möglich<br>\n«;
$mybox->showresult();
$error = TRUE;
break;
} else {
echo »erfolgreich<br>\n«;
$mybox->showresult();
}
echo 'Anmeldung: ';
if (!$mybox->helo($pcname)) {
echo »[FEHLER] HELO fehlgeschlagen!<br>\n«;
$mybox->showresult();
$error = TRUE;
break;
} else {
echo »erfolgreich angemeldet<br>\n«;
$mybox->showresult();
}
echo 'Absender: ';
if (!$mybox->from($fromname)) {
echo »[FEHLER] Kommando nicht erkannt!<br>\n«;
$mybox->showresult();
$error = TRUE;
break;
} else {
echo »akzeptiert<br>\n«;
$mybox->showresult();
}
echo 'Empfänger: ';
if (!$mybox->to($toname)) {
echo »[FEHLER] Kommando nicht erkannt!<br>\n«;
$error = TRUE;
break;
} else {
echo »akzeptiert<br>\n«;
$mybox->showresult();
}
break;
} /* end while */

echo 'Daten: ';
$data = <<<SMTPMAIL
Dieser Text wurde mit einer eigenen SMTP-Klasse gesendet!

SMTPMAIL;
if (!$mybox->data('Testmail per SMTP', $data)) {
echo »[FEHLER] Kommando nicht erkannt!<br>\n«;
$mybox->showresult();
exit;
} else {
echo »akzeptiert<br>\n«;
$mybox->showresult();
}

echo $mybox->quit();
?>


   User-Bewertung: /
Was ist das Gegenteil von »php«? Erkläre wie es funktioniert.

Dein Name:
Deine Assoziationen zu »php«:
Hier nichts eingeben, sonst wird der Text nicht gespeichert:
Hier das stehen lassen, sonst wird der Text nicht gespeichert:
 Konfiguration | Web-Blaster | Statistik | »php« | Hilfe | Startseite 
0.0116 (0.0062, 0.0039) sek. –– 858954969