PHP mail() Funktion benutzen auf Webhosting Paket

  • Hallo,
    Ich habe ein recht gravierendes Problem mit meinem Webhosting-Paket bzw. PHP.
    Meine Webseite ist ein selbst programmiertes und bereits auf einem anderen und teilweise diesem Webhoster geteste Benutzerplattform (Mit Login, Registrierung, Benutzerprofilen usw.)


    Wie ihr euch vielleicht denken könnt lasse ich die Registrierungen via Mail-Bestätigung aktivieren. Dies ging bisher immer problemlos doch nun macht mir die Funktion mail() etwas Probleme :/
    Ich habe an den mir zur verfügung stehenden veränderbaren Einstellungen der php.ini alle Funktionen deaktiviert die zum Schutz des Servers bzw. der Benutzer beiträgt und natürlich jegliche Error_Reportings. Die Funktion mail() habe ich jetzt nochmals mit Error_Reporting getestet jedoch wird keine Fehler ausgegeben.


    Das Problem Grundsätzlich besteht dadrin das keine Bestätigungsmail oder sonst irgend eine E-Mail ankommt welche via mail() versendet wird. Die angegebene Absender E-Mail Adresse die ich zusätzlich im Header via "from: noreplay@wearevideo.org" versende existiert und Funktioniert auch (getestet).


    Nun wollte ich fragen an was es liegen könnte das die E-Mails dennoch nicht versendet werden können? Kann mir vielleicht jemand helfen, den das Problem ist schon sehr gravierend da sich bereits einige Benutzer an mich gewandt haben da sie keine Bestätigungsemail erhielten.


    Hier noch ein kleiner abgeänderter Code ausschnitt wie die mail()-Funktion aufgebaut ist in meinem Script:

    PHP
    1. mail($sEmail, "Registrierung abschliessen", "Sie haben sich bei WeAreVideo Registriert.\n\nIhr Registrierungscode lautet: ".$sCode."\n\nMit Freundlichen Grüssen,\n Das WeAreVideo-Team", "from: noreplay@wearevideo.org");


    Vielen Dank für die Hilfe bereits im vorraus ;)

  • Ich habe es nun direkt aus dem Confixx abgeschrieben (1 zu 1):


    WebServer mod_rewrite(off),
    WebServer error log(off),
    WebServer mod_rewrite debug(debug level 0),
    PHP debug(no debug),
    PHP Version (PHP 5.4),
    PHP Zeitzone (Europe/Berlin),
    PHP Zend Guard Loader(Off),
    PHP ioncube Loader(Off)

  • Ich habe nun einige Funktionen zurück auf den Standardwert gesetzt bis auf die PHP Version, Die Zeitzone und das PHP debuging (5.4; Europe/Berlin; off). Das Versenden von E-Mail via mail() funktion ist nun möglich doch komischerweise wird nur eine E-Mail versendet. Wird die mail()-Funktion erneut angewendet erhalte ich keine E-Mail mehr obwohl sich am aufbau der Funktion nichts verändert hat. Dies bedeutet das bei einem erneutem zusenden von E-Mails diese nicht zugestellt werden können.
    Woran könnte es liegen das immer nur die erste E-Mail welche mit mail() versendet wird auch wirklich zugestellt wird (sofern sich die zweite E-Mail ebenfalls auf den selben Empfänger bezieht)?

  • Als ich dem Support das letze mal geschrieben habe meinte der ich solle mich ans Kundenforum wenden^^


    Also das Script welches ich zum Testen verwendet habe, habe ich kurzehand neu geschrieben da ich nicht für alle Testvorgänge X Benutzer erstellen und löschen wollte.
    Das Test-Script besteht nur aus 3 Zeilen (Zeile 1 & 3 sind: <?php ?>) dazwischen befindet sich legiglich ein manueller mail-Funktionscode welcher exakt so aussieht:


    PHP
    1. mail ("********@gmail.com", "TEST Email an **********@gmail.com", "Hallo dies ist ein Test", "from: noreplay@wearevideo.org");


    (Die sternchen stehen natürlich für den ausgelassenen teil der E-Mail Adresse)


    Ich habe das selbe Script dann noch an einer bluewin.ch Adresse getestet.
    Dort selbes Trauerspiel, erste E-Mail ohne jegliche probleme innerhalb von 5 Sekunden erhalten .. 2-X E-Mail kamen nie an.

  • Ich habe das grade mal zusammen mit Alex im NCLabs getestet.
    Es bestand echt ein kleiner Fehler den der Support eben behoben haben sollte.


    Das Script funktioniert bei mir jetzt: http://blackhole.stdout.eu/phpmailtest.php


    Bei Dir sollte das jetzt auch gehen.
    Wichtig ist der Parameterstring neben dem From im Header.


    Bitte das Script wieder löschen wenn alles getestet ist. ;)