kostenloser Webspace werbefrei: lima-city


E-Mail über smtp verschicken

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    bgr

    bgr hat kostenlosen Webspace.

    Hallo

    da ich am Tag mehr wie 50 Mail verschicken will, muss ich ja smtp verwenden. Wie kann es das mit PHP verwirklichen? Kennt ihr ein Tutorial wo das gut erklärt wird, alles was ich bisjetzt gefunden habe funktioniert nicht oder so umständlich erklärt das es kaum einer versteht.
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Hier ist ein Tutorial dazu:
    http://mailinfo.kundenserver.de/auth_phpmailer.php3

    LG cookies

    @volnerius: Die sind bei lima aber auf 50 begrenzt.
  4. Verwende am Besten eine schon programmierte Lösung wie den PHPMailer (siehe Tut von cookies):
    http://sourceforge.net/projects/phpmailer/files/phpmailer%20for%20php5_6/

    Ansosnten musst du dich mit SMTP selbst beschäftigen und mit dem Server direkt kommunizieren.
    Das ist etwas kompliziert, daran lässt sich nix ändern. Solange man keine Erfahrung mit Protokollen hat und keine Lust sich da erst einzuarbeiten, sollte so eine Lösung wie PHPMailer bevorzugen.

    Beitrag zuletzt geändert: 25.5.2010 14:59:13 von reimann
  5. Sollte selbsterklärend sein.
    function SendEmail($to, $nameto, $subject, $message)
    {
    	$smtpServer = 'mail.lima-city.de';
    	$port = '25';
    	$timeout = '30';
    	$username = 'mail@example.com';
    	$password = 'passwort';
    	$from = 'mail@example.com';
    	$namefrom = 'example mail';
    	$localhost = 'localhost';;
    	$newLine = "\r\n";
    
    	$smtpConnect = fsockopen($smtpServer, $port, $errno, $errstr, $timeout);
    	$smtpResponse = fgets($smtpConnect, 515);
    	if(empty($smtpConnect))
    	{
    		$output = "Failed to connect: $smtpResponse";
    		return $output;
    	}
    	else
    	{
    		$logArray['connection'] = "Connected: $smtpResponse";
    	}
    
    	fputs($smtpConnect,"AUTH LOGIN" . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['authrequest'] = "$smtpResponse";
    
    	fputs($smtpConnect, base64_encode($username) . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['authusername'] = "$smtpResponse";
    
    	fputs($smtpConnect, base64_encode($password) . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['authpassword'] = "$smtpResponse";
    
    	fputs($smtpConnect, "HELO $localhost" . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['heloresponse'] = "$smtpResponse";
    
    	fputs($smtpConnect, "MAIL FROM: $from" . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['mailfromresponse'] = "$smtpResponse";
    
    	fputs($smtpConnect, "RCPT TO: $to" . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['mailtoresponse'] = "$smtpResponse";
    
    	fputs($smtpConnect, "DATA" . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['data1response'] = "$smtpResponse";
    
    	$headers = "MIME-Version: 1.0" . $newLine;
    	$headers .= "Content-type: text/html; charset=iso-8859-1" . $newLine;
    	$headers .= "To: $nameto <$to>" . $newLine;
    	$headers .= "From: $namefrom <$from>" . $newLine;
    
    	fputs($smtpConnect, "To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n.\n");
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['data2response'] = "$smtpResponse";
    
    	fputs($smtpConnect,"QUIT" . $newLine);
    	$smtpResponse = fgets($smtpConnect, 515);
    	$logArray['quitresponse'] = "$smtpResponse";
    }
    ?>
    Näheres dazu: http://de.wikipedia.org/wiki/SMTP

    Beitrag zuletzt geändert: 25.5.2010 15:07:51 von nerdinator
  6. Das Protokoll ist relativ simpel.
    Öffne einfach mal eine Telnet Konsole (Windows Taste + R => "cmd" => Enter => telnet => Enter). Bei Win 7 muss es erst iwie aktiviert werden.
    Dann schnapp dir ne Übersicht über die SMTP Befehle und connecte dich einfach mal und sende ne E-Mail via telnet.
    Dannach solltest du dann acuh in der Lage sein, dass eben in PHP zu implementieren.

    Gruß Lucas
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!