power-box.de
-


Hinweise


Antwort
 
LinkBack Themen-Optionen Thema durchsuchen Thema bewerten
Alt 04.07.2008, 19:26   #1
TP-Insider
 
Registriert seit: Jul 2004
Ort: Stuttgart
joextra ist auf einem guten Weg

problem mit mail funktion


hi,

ich verwende in einem meiner projekte für den mailversand die htmlMimeMail klasse. die (html)mail wird auch sauber übergeben, allerdings bekomme ich die gleich zwei mal obwohl die funktion nur ein mal aufgerufen wird. ich hab das ganze system auf dem kopf gestellt, aber finde nichts das auf ein problem aufweist.
probehalber habe ich dann direkt die mail funktion aufgerufen, und diese schickt die mail auch zwei mal. ich suche jetzt schon verzweifelt seit stunden nach den problem, aber finde wirklich nichts. vielleicht hat ja schon jemand das gleiche problem und weiß eine lösung?

hier der header und anfang der mail falls wichtig:
Code:
Return-path: <xxxx@arcor.de>
Envelope-to: xxxxxxxxxxx
Delivery-date: Fri, 04 Jul 2008 19:23:52 +0200
Received: from mail-in-04.arcor-online.net ([151.189.21.44]:33113)
    by zeus.alsoisp.net with esmtps (TLSv1:AES256-SHA:256)
    (Exim 4.69)
    (envelope-from <xxxx@arcor.de>)
    id 1KEp0i-0007pW-Lq
    for xxxxxxxxxxx; Fri, 04 Jul 2008 19:23:52 +0200
Received: from mail-in-04-z2.arcor-online.net (mail-in-04-z2.arcor-online.net [151.189.8.16])
    by mail-in-04.arcor-online.net (Postfix) with ESMTP id 24AC217F53C
    for <xxxxxxxxxxx>; Fri,  4 Jul 2008 19:23:48 +0200 (CEST)
Received: from mail-in-12.arcor-online.net (mail-in-12.arcor-online.net [151.189.21.52])
    by mail-in-04-z2.arcor-online.net (Postfix) with ESMTP id 0EB70ABB7A
    for <xxxxxxxxxxx>; Fri,  4 Jul 2008 19:23:48 +0200 (CEST)
Received: from joe-180394da4c2 (dslb-084-056-175-002.pools.arcor-ip.net [84.56.175.2])
    by mail-in-12.arcor-online.net (Postfix) with SMTP id EEF3B8C464
    for <xxxxxxxxxxx>; Fri,  4 Jul 2008 19:23:46 +0200 (CEST)
Date: Fri, 04 Jul 2008 19:22:15 +0200
Subject: Bestellung xxxxxxxxxxx-Shop
To: xxxxxxxxxxx
MIME-Version: 1.0
From: bestellung@xxxxxxxxxxx.de
Content-Type: multipart/alternative;
    boundary="=_70f5cf8272c2cf9d305b3760f37d93eb"
Message-ID: <k3hs93.7pr@127.0.0.1>
X-Virus-Scanned: ClamAV 0.93/7407/Mon Jun  9 04:21:00 2008 on mail-in-12.arcor-online.net
X-Virus-Status: Clean
X-EsetId: 7410142B83ED32312456

--=_70f5cf8272c2cf9d305b3760f37d93eb
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit

text/html
--=_70f5cf8272c2cf9d305b3760f37d93eb
Content-Type: text/html; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable

<html>
            <head>
            <meta http-equiv=3D&apos;Content-Type&apos; content=3D&apos;text/html; charset=3Diso-88=
59-1&apos;>
            <style>
joextra ist offline   Mit Zitat antworten


Alt 05.07.2008, 05:42   #2
TP-Moderator
 
Benutzerbild von Rizzo
 
Registriert seit: Aug 2004
Ort: Kaiserslautern
Rizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine UserRizzo lebt für das TP und seine User
Zitat:
Zitat von joextra Beitrag anzeigen
probehalber habe ich dann direkt die mail funktion aufgerufen, und diese schickt die mail auch zwei mal.
Wenn das Verhalten generell im Zusammenhang mit mail() auftritt, solltest Du besser mal den Provider fragen, weil ich stark bezweifle, dass in so einem Fall jemand von hier helfen kann.
Ansonsten wäre es auch sinnvoller den Code zu posten der das Formular verarbeitet, die Klasse anspricht und die Mail verschickt und nicht die Mail die letztendlich ankommt.
Oder bringst Du auch deinen Reifen in die Werkstatt und sagst dem Mechaniker "Mein Auto springt nicht an und bewegt sich nicht vorwärts, deswegen habe ich mal den Reifen mitgebracht, vielleicht erkennen Sie ja daran an was es liegt."

Wie im Header auch zu sehen ist, werden verschiedene Content-Types benutzt, da ist von Mail Anhang über HTML bis Plain Text alles dabei - das kann ja wohl kaum normal sein.
Rizzo ist gerade online   Mit Zitat antworten
Alt 05.07.2008, 11:13   #3
TP-Insider
 
Registriert seit: Jul 2004
Ort: Stuttgart
joextra ist auf einem guten Weg
am provider wirds nicht liegen. sowohl lokal als auch online habe ich das phänomen. außerdem passiert das nur an dieser stelle. bei anderen email versand, gibt es keine probleme. ich habe bemerkt, das wenn ich z.b. die obere hälfte des codes weg kommentiere, wird bei jeden zweiten versand nur eine mail verschickt. echt komisch.
mit den header hast du schon recht. sieht etwas komisch aus, wenn man den mit anderen mails vergleicht.

hier noch der code. ist im prinzip einfaches html das aufgebaut und versendet wird.
PHP-Code:
<?
if($orderIt != "") {
    include_once(
"libraries/htmlMimeMail.php");
    
$mail = new htmlMimeMail();
    
$mail->setFrom("bestellung@xxxx.de");
    
$mail->setSubject("Bestellung xxxx-Shop");
    
    
$imprintArray $database->readObject("shop_imprint");
    
$imprint '<table width="750" style="line-height:20px;" cellpadding="3" cellspacing="0">
                <tr height="25">
                    <td >&nbsp;
                    </td>
                </tr>
                <tr>
                    <td valign="top" height="50">'
.
                        
$imprintArray[0]["imprint"].
                    
'</td>
                </tr>
            </table>'
;
    
    if(
$addToCart != "") {
        
$class $class1 "cartItemsBG1";
        
$class2 "cartItemsBG2";
        
$colorChange 1;
        foreach(
$addToCart as $key => $value) {
        
$totalPrice += $value[price] * $value[quantity];
        
$ITEMS .= "<tr class='$class'>
                    <td>&nbsp;
                        
                    </td>
                    <td>
                        $value[productName]
                    </td>
                    <td align='center'>"
;
        if(
$value["size"] != "") { $ITEMS .= $value["size"]; } else { $ITEMS .= "-"; }
        
$ITEMS .= " / ";
        if(
$value["color"] != "") { $ITEMS .= $value["color"]; } else { $ITEMS .= "-"; }
        
$ITEMS .= "</td>
                    <td align='center'>
                        $value[quantity]
                    </td>
                    <td align='right'>
                        $value[price] EUR
                    </td>
                    <td align='right'>"
.
                        
str_replace("."",", (str_replace(",""."$value["price"]) * $value["quantity"]))." EUR
                    </td>
                </tr>"
;
                if(
$colorChange == 2) {
                    
$colorChange 1;
                    
$class $class1;
                } else {
                    
$colorChange 2;
                    
$class $class2;
                }
                
$ITEMS .= "<tr>
                    <td colspan='6' style='height:1px; margin:0; padding:0; background-color:#666666'></td>
                </tr>"
;
        }
    }
        
$ITEMS .= "<tr style='line-height:20px;'>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td style='color:#FF0000'>
                        Summe
                    </td>
                    <td align='right' style='color:#FF0000'>"
.
                        
number_format($totalPrice2',''')." EUR
                    </td>
                </tr>
                <tr style='line-height:20px;'>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td style='color:#FF0000'>
                        zzgl. Versandkosten &nbsp;"
;
                        if(
$dispatchType == 2) { $ITEMS .= "<br />(Nachnahme) &nbsp;"; }
                    
$ITEMS .= "</td>
                    <td align='right' valign='top' style='color:#FF0000'>"
;
                        if(
$dispatchType == 1) { $ITEMS .= "5,95 EUR"$totalPrice += 5.95; }
                        if(
$dispatchType == 2) { $ITEMS .= "6,50 EUR"$totalPrice += 6.50; }
                    
$ITEMS .= "</td>
                </tr>
                <tr style='line-height:20px;'>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td>&nbsp;
                        
                    </td>
                    <td style='color:#FF0000'>
                        Gesamtsumme
                    </td>
                    <td align='right' style='color:#FF0000'>"
.
                        
number_format($totalPrice2',''')." EUR
                    </td>
                </tr>"
;
    
$totalPrice number_format($totalPrice2',''');
    
    function 
emailText($ITEMS$totalPrice$imprint "") {
        
extract(sessionGetVar('adressArray'));
        
$charset "iso-8859-1";
        
$HTML "<html>
            <head>
            <meta http-equiv='Content-Type' content='text/html; charset=$charset'>
            <style>
            table, td {
                font-family:Verdana, Arial, Helvetica;
                font-size: 10px;
            }
            .cartItems {
                background-color:#FFDC0B;
                line-height:20px;
            }
            .cartItemsBG1 {
                background-color:#F3F3F3;
                line-height:20px;
            }
            
            .cartItemsBG2 {
                background-color:#FFF8CC;
                line-height:20px;
            }
            </style>
            </head>
            <body style='font-family:Verdana, Arial, Helvetica, sans-serif; font-size: 10px;'>
            <table width='750' style='line-height:20px;' cellpadding='3' cellspacing='0'>
                <tr>
                    <td colspan='2' valign='top' height='50'>
                        <strong>Bestellungbest&auml;tigung</strong>
                    </td>
                </tr>
                <tr>
                    <td colspan='2'>
                        <font color='#FF0000'>Kundendaten:</font>
                    </td>
                </tr>
                <tr>
                    <td width='130'>
                        Vorname
                    </td>
                    <td>
                        $name
                    </td>
                </tr>
                <tr>
                    <td>
                        Nachname
                    </td>
                    <td>
                        $surname
                    </td>
                </tr>
                <tr>
                    <td>
                        E-Mail
                    </td>
                    <td>
                        $email
                    </td>
                </tr>
                <tr>
                    <td>
                        Strasse, Nr.
                    </td>
                    <td>
                        $street $streetNo
                    </td>
                </tr>
                <tr>
                    <td>
                        PLZ, Ort
                    </td>
                    <td>
                        $zip $place
                    </td>
                </tr>
                <tr>
                    <td valign='top'>
                        Versandart
                    </td>
                    <td>"
;
                        if(
$dispatchType == 1) { $HTML .= "Vorkasse/Überweisung"; } else { $HTML .= "Nachnahme"; }
                    
$HTML .= "</td>
                </tr>
                <tr height='25' valign='bottom'>
                    <td colspan='2'>&nbsp;
                    </td>
                </tr>
            </table>
            <table width='750' cellpadding='3' cellspacing='0'>
                <tr>
                    <td colspan='6' valign='top' height='50'>
                        <font color='#FF0000'>Bestellte Artikel:</font>
                    </td>
                </tr>
                <tr>
                    <td>&nbsp;
                        
                    </td>
                    <td width='150'>
                        Artikel
                    </td>
                    <td align='center' width='60'>
                        Größe/Farbe
                    </td>
                    <td align='center' width='60'>
                        Menge
                    </td>
                    <td align='right'>
                        Einzelpreis
                    </td>
                    <td align='right'>
                        Gesamtpreis
                    </td>
                </tr>
                $ITEMS
                <tr>
                    <td colspan='5' height='3' bgcolor='#FFFFFF'></td>
                </tr>
            </table>
            $imprint
            </body>
            </html>"
;
        return 
$HTML;
    }
    
    
$mail->setHTML(utf8_decode(emailText($ITEMS$totalPrice$imprint)), "text/html");
    
$mail->send(array($email));
}
?>
joextra ist offline   Mit Zitat antworten
Alt 05.07.2008, 12:40   #4
TP-Greis
 
Benutzerbild von Boris
 
Registriert seit: Mar 2001
Ort: Berlin, Germany
Boris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKEBoris ist ein richtiges Arbeitstier - DANKE
Nun, das hier:

$mail->send(array($email));

Schickt die Email 1x an alle angegebenen Empänger - was steht denn bei $email genau drin? Nur eine einzige Email-Adresse?
__________________
My software never has bugs. It just develops random features ...

» DevShack - die Website des freien Webentwicklers Boris
Boris ist offline   Mit Zitat antworten
Alt 05.07.2008, 13:03   #5
TP-Insider
 
Registriert seit: Jul 2004
Ort: Stuttgart
joextra ist auf einem guten Weg
die email muss man bei htmlMimeMail als array übergeben. und da steht natürlich nur eine mail drin. das hab ich als erstes überprüft ;-)
wie schon geschrieben, die mail wird wirklich nur ein mal übertragen. das hab ich 10000000 mal überprüft. mein problem ist halt das die zwei mal ankommt, was aber nicht sein sollte.
joextra ist offline   Mit Zitat antworten
Alt 09.07.2008, 23:10   #6
TP-Insider
 
Registriert seit: Jul 2004
Ort: Stuttgart
joextra ist auf einem guten Weg
hat sonst keiner eine idee? ich schlage mich schon ewig mit dem problem aber finde nichts was auf dieses problem hinweisen könnte. ich bin echt ratlos
joextra ist offline   Mit Zitat antworten
Antwort

  Aktuelles Thema
  TP Hilfe Forum > Web-Editoren & Coding > Traum-Dynamik
problem mit mail funktion [PHP] problem mit mail funktion
« Fragen zur Funktion mail() | Webseite in Bild rendern »

Stichworte
php

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
mail() funktion in php urban-a Traum-Dynamik 4 23.11.2004 20:31
bcc in der Mail()-Funktion Pixelmaster Traum-Dynamik 1 13.06.2004 22:00
Mail-Funktion Pixelmaster Traum-Dynamik 9 06.09.2003 00:47
Mail()-Funktion Pixelmaster Traum-Dynamik 1 02.05.2003 08:09
[PHP] mail-Funktion spinnt? adrian Traum-Dynamik 10 27.09.2002 09:44


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:16 Uhr.

Powered by: vBulletin Version 3.7 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd. / Search Engine Friendly URLs by vBSEO 3.2.0 ©2008, Crawlability, Inc.
Traum-Projekt.com | Suchen | Archiv | Impressum | Kontakt | | | Nach oben |



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67