SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

PHP 5.3 & MySQL 5.1

PHP 5.3 & MySQL 5.1 zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

 
 
Themen-Optionen Ansicht
  #1  
Alt 05.04.2005, 04:13:18
Scope Scope ist offline
Anfänger
 
Registriert seit: Apr 2002
Ort: Deutschland
Alter: 41
Beiträge: 6
Problemme mit mail()

Hallo,

für einen Newsletter verwende ich mail() (logisch :). In testläufen, musste ich feststellen, dass mein Programm nicht fehlerfrei aber auch nicht fehlerhaft läuft.

So sieht das Programm (auszug) aus:

PHP-Code:
elseif ($_GET['do'] == 'send') {
  if (!isset(
$_POST['s'])) {
    echo 
'<form action="newsletter.php?do=send" method="post" style="margin-top: 0px; margin-bottom: 0px;"><textarea name="text" cols="156" rows="20" class="formfield"></textarea><br/><input type="submit" name="s" value="Vorschau" class="button" /> <input type="submit" name="s" value="Newsletter verschicken" class="button" /></form><p>Der Ausdruck :NAME: wird durch den, in der Datenbank vorhandenen, Namen des Empfängers ersetzt.</p>';
  }
  elseif (
$_POST['s'] == 'Vorschau') {
    echo 
'<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#000000" width="800"><tr><td>';
    @include (
'../../library/newsletter/header.html');
    echo 
"<br>";
    echo 
'<div style="font-family: Arial; font-size: 12px;">'.nl2br(stripslashes($_POST['text'])).'</div>';
    echo 
"<br>";
    @include (
'../../library/newsletter/footer.html');
    echo 
'</td></tr></table><br/><br/>(Zum Editieren bzw. Versenden <a href="javascript:history.back();">zurück</a> gehen)';
  }
  elseif (
$_POST['s'] == 'Newsletter verschicken') {
    
set_time_limit(300);
    
$adressen mysql_query('SELECT `email`, `name` FROM '.$newsletter_prefix.'newsletter ');
    
$head = @file_get_contents('../../library/newsletter/header.html');
    
$foot = @file_get_contents('../../library/newsletter/footer.html');
    
$text1 stripslashes($_POST['text']);
    
$text1 str_replace("r"''$text1);
    
$text1 '<div style="font-family: Arial; font-size: 12px;">'.nl2br($text1).'</div>';
    echo 
'<!-- '$i 0;
    while (
$data mysql_fetch_array($adressenMYSQL_ASSOC)) {
      
$text = (empty($data['name'])) ? str_replace(':NAME:''Unbekannt'$text1) : str_replace(':NAME:'$data['name'], $text1);
      
mail($data['email'], $newsletter_name.date(" M Y"),$head.$text.'<br /><div style="font-family: Arial; font-size: 12px;"><hr width="100%" size="1" color="#000000" align="center" noshade>Um den Newsletter abzubestellen <a href="'.$def_webseite.'">'.$def_webseite.'</a> besuchen, Emailadresse eingeben und Austragen klicken.'.$foot"MIME-Version: 1.0rnContent-type: text/html; charset=iso-8859-1rnFrom: ".$newsletter_name." <".$def_email.">rn");
      
$i++;
      echo 
"$i: $data[email], ";
    }
    echo 
'-->';
    echo 
'Newsletter verschickt.';
  }

Wichtig ist eigentlich nur die Zeile:
PHP-Code:
mail($data['email'], $newsletter_name.date(" M Y"),$head.$text.'<br /><div style="font-family: Arial; font-size: 12px;"><hr width="100%" size="1" color="#000000" align="center" noshade>Um den Newsletter abzubestellen <a href="'.$def_webseite.'">'.$def_webseite.'</a> besuchen, Emailadresse eingeben und Austragen klicken.'.$foot"MIME-Version: 1.0rnContent-type: text/html; charset=iso-8859-1rnFrom: ".$newsletter_name." <".$def_email.">rn"); 
In der Datenbank habe ich 2 verschiedene Emails eingetragen, dessen beide male ich der empfänger bin. Auf der einen Adresse kommt die Email so wie sie soll an. In der anderen kommt sie mit als Sourcecode an:

HTML-Code:
Content-type: text/html; charset=iso-8859-1

From: Development <[... ... ...]>


<div align="center">
<table border="0" bordercolor="#000000" cellpadding="0" cellspacing="0" style="border-collapse: collapse" width="100%">
  <tr>
    <td width="100%" align="right"><img src="http://[... ... ...]/library/newsletter/logo.jpg" border="0"></td>
  </tr>
</table>
</div><div style="font-family: Arial; font-size: 12px;">test</div><br /><div style="font-family: Arial; font-size: 12px;"><hr width="100%" size="1" color="#000000" align="center" noshade>Um den Newsletter abzubestellen <a href="http://[... ... ...]">http://[... ... ...]</a> besuchen, Emailadresse eingeben und Austragen klicken.<hr width="100%" size="1" color="#000000" align="center" noshade>
Auffälig an der Email ist, dass der "From:" fehlt. Ich habs also anschliesend (laut php.net) es mit
PHP-Code:
mail($data['email'], $newsletter_name.date(" M Y"),$head.$text.'<br /><div style="font-family: Arial; font-size: 12px;"><hr width="100%" size="1" color="#000000" align="center" noshade>Um den Newsletter abzubestellen <a href="'.$def_webseite.'">'.$def_webseite.'</a> besuchen, Emailadresse eingeben und Austragen klicken.'.$foot"MIME-Version: 1.0rnContent-type: text/html; charset=iso-8859-1rn"From".$newsletter_name." <".$def_email.">"rn"); 
versucht ("From: ".$newsletter_name." <".$def_email.">") und das Ergebniss war, das ich die Emails von annoymus bekommen habe, der Inhalt (eines richtig, eines in sourcecode) nicht geändert hat.

Hat jemand vielleicht einen Tipp was ich falsch mache?

Geändert von Scope (23.06.2009 um 21:40:25 Uhr)
Mit Zitat antworten
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mail() sendet mail nicht Chrone PHP Grundlagen 3 11.04.2004 12:20:07
Formular als Html Mail verschicken luckypycho PHP für Fortgeschrittene und Experten 1 17.02.2004 21:23:18
Seltsames Verhalten bei Mail mit Anhang - e-Card Funktion NightDragon PHP für Fortgeschrittene und Experten 2 22.01.2004 17:47:43
Mail versenden wenn alle Felder ausgefüllt... Swordfish PHP für Fortgeschrittene und Experten 11 05.09.2002 11:12:56
PHP mail() funktion und server probleme flobee PHP für Fortgeschrittene und Experten 0 03.07.2002 01:18:27


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:58:10 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt