WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Internet (http://www.wcm.at/forum/forumdisplay.php?f=8)
-   -   Email-PHP-Script funktioniert nicht mehr (http://www.wcm.at/forum/showthread.php?t=248479)

Quintus14 13.06.2015 08:49

Email-PHP-Script funktioniert nicht mehr
 
Hi,

wenn ich mich nicht irre, wurde mir hier im Forum vor mehr als 10 Jahren geholfen ein PHP-Script zu schreiben - Aufruf einer Maske, Eingabe einer Nachricht, Abschicken einer Email - weil ich die Emailadresse aus Schutz vor Spam nicht in Klarschrift auf der dienstlichen Website haben möchte.

Die Website wird bei A1 gehostet und das Kontaktformular hat jahrelang klaglos funktioniert. Nun nicht mehr ... man fragt sich, warum. Die entsprechende Zeile im Script lautet:
Code:

mail("meine@dienstliche.email.at","Kontakt von Website",$mailbody,"From: $email\nReply-To: $email");
Das Kontaktforumlar lässt sich aufrufen, ausfüllen und ohne Fehlermeldung abschicken, es erscheint auch die Bestätigungsmeldung. Die Mail kommt aber nicht an...

???

Thx für Hinweise.
Quintus14

ZombyKillah 13.06.2015 12:12

Hast du einen Zugriff auf die Log files, oder Konfiguration?

Ist immer ein wenig schwer eine Diagnose ohne Fehermeldung zu machen ...

Wenn ich raten muss:
Es gab ein Update ...
Nachdem vom php kein Fehler kommt ... rate ich weiter, dass es ein Updates bei den Mails war ...

Um genauer zu sein, vermute ich dass der Mailserver an den die Mail gesendet wird diese nicht akzeptiert.
Normalerweise sind diese so konfiguriert, dass sie nur Mails an die eigene Domain zulassen ...

However ... IMHO kann dir nur der Provider den du nutzt weiterhelfen was wirklich los ist.

Quintus14 13.06.2015 12:36

Danke für Deine Antwort.

Irgend ein awstatsxxxx.txt gibt's da mit Logeinträgen ... ein googebot hat die Site besucht ... über nicht durchgegangene Emails hab' ich da drin nichts gefunden.

Ich hab' mal den Provider angeschrieben ... aber vor Montag wird da eh keine Antwort zu erwarten sein.

Thx & lG
Quintus14

Don Manuel 13.06.2015 17:08

Hat vielleicht etwas damit zu tun:

Kritische Lücken in PHP geschlossen

Quintus14 13.06.2015 19:03

Hmmm ... das Update war anscheinend vor 2 Tagen - dass sich einer beschwert hat, dass seine Email nicht angekommen ist, ist schon mindestens 2 Wochen her. Mal schauen, was die Techniker bei A1 sagen.

T.dot 14.06.2015 10:09

Wie schaut denn das ganze Script aus?
Von wo kommen die Variablen $mailbody und $email?

Quintus14 15.06.2015 06:57

Hi,

ich hab' das Script mal ein wenig 'anonymisiert'. Wie gesagt: hat jahrelang funktioniert und niemand - zumindest ich - hab' nix geändert. Vom Nutzer eingegeben wird eine Emailadresse - die wird mir mitgeschickt, damit ich dem Knaben zurückschreiben kann.

Code:

<html>
<body>
<h3>Post an MEINE-Firma</h3>
<hr>
<p>
  <?php

if (phpversion() >= "4.1.0") {
    $kommentar = $_POST[kommentar];
    $vorname  = $_POST[vorname];
    $nachname  = $_POST[nachname];
    $email    = $_POST[email];
    $telefon  = $_POST[telefon];
}

if ($kommentar) {

    if (!$vorname) Intro("Bitte geben Sie Ihren Vornamen an<br />");
    if (!$nachname) Intro("Bitte geben Sie Ihren Nachnamen an<br />");
    if (!eregi("^[_a-z0-9-]+(\\.[_a-z0-9-]+)*@[a-z0-9-]+(\\.[a-z0-9-]+)*(\\.[a-z]{2,4})$", trim($email))) Intro("bitte geben Sie eine gültige Emailadresse an <br />");
   
        $mailbody="Jemand hat Dich über die MEINE-Website kontaktiert.
Hier sind die Daten, die erfasst wurden:

Vorname: $vorname
Nachname: $nachname
Email: $email
Telefon: $telefon

Kommentar:
$kommentar";

mail("office@MEINE-Firma.at","Kontakt von Website MEINE",$mailbody,"From: $email\nReply-To: $email");

echo <<<HTMLOUT
<html>
<head>
    <title>Kontakt - Herzlichen Dank</title>
</head>
<link href="MEINE.css" rel="stylesheet" type="text/css">
<body bgcolor="#2E3D4F" class="schrift">
  <table align="center" class="tabelle" border="0" width="450">
    <tr>
      <td valign="top" colspan="2" align="center">
      </td>
    </tr>
    <tr>
      <td valign="top" align="center">Herzlichen Dank für Ihr Interesse!<br />Wir werden Sie sobald als möglich kontaktieren.
      </td>
    </tr>
    <tr>
      <td valign="top" colspan="2" align="center">
      </td>
    </tr>
  </table>
</form>
</body>
</html>
HTMLOUT;
   
} else {
    Intro("");
}

function Intro ($errormsg) {

global $vorname, $nachname, $email, $telefon, $kommentar;

echo <<<INTROHTML
<html>
<head>
    <title>Kontaktformular</title>
<link href="MEINE.css" rel="stylesheet" type="text/css">
</head>
<body bgcolor="#2E3D4F" class="schrift">
<form action="kontakt.php" method="post">
  <table align="center" border="0" width="450" bgcolor="#394A5D" class="tabelle">
    <tr>
      <td valign="top" colspan="3" align="center">Bitte füllen Sie alle mit einem Stern gekennzeichneten Felder aus.
      </td>
    </tr>
    <tr>
      <td colspan="2">$errormsg</td>
    </tr>
    <tr>
      <td align="right" valign="top">* Vorname: </td>
      <td valign="top"><input type="text" size="20" maxlength="40" name="vorname" value="$vorname">
      </td>
    </tr>
    <tr>
      <td align="right" valign="top">* Nachname: </td>
      <td valign="top"><input type="text" size="20" maxlength="40" name="nachname" value="$nachname">
      </td>
    </tr>
    <tr>
      <td align="right" valign="top">* Email: </td>
      <td valign="top"><input type="text" size="20" maxlength="40" name="email" value="$email">
      </td>
    </tr>
    <tr>
      <td align="right" valign="top">Telefon: </td>
      <td valign="top"><input type="text" size="20" maxlength="40" name="telefon" value="$telefon">
      </td>
    </tr>
    <tr>
      <td valign="top" colspan="2" align="center">Ihre Anfrage / Ihr Kommentar:</td>
      </td>
    </tr>
    <tr>
      <td valign="top" colspan="2" align="center"><textarea name="kommentar" cols="40" rows="12" nowrap>$kommentar</textarea>
      </td>
    </tr>
    <tr>
      <td valign="top" colspan="2" align="center">
      </td>
    </tr>
    <tr>
      <td valign="top" colspan="2" align="center">
        <input type="submit" name="process_form" value="Abschicken">
        <input type="reset" value="Eingaben löschen">
      </td>
    </tr>
  </table>
</form>
</body>
</html>
INTROHTML;
exit;
}

?>
</p>
<p>&nbsp;</p></body>
</html>

Thx
Quintus14

Quintus14 15.06.2015 19:20

FYI: die A1-Hotline hat sich gemeldet ... erst festgestellt, dass im Business-Mailmanger eine Emailadresse eingetragen sein muss, damit der Mailserver die Email annimmt ... eingetragen - funktioniert trotzdem (noch) nicht. Nun sind die Spezialisten bei A1 am Suchen....

Quintus14 16.06.2015 09:46

FYI: Thema erledigt - am PHP lag es nicht, es lag am Email-Eingangsserver: dieser ist mittlerweile 'heikler' geworden (zwischen 2004 und 2013 hat es ja tadellos funktioniert) - er braucht nun zwingend eine (richtige?) Absende-Mailadresse. A1 hat irgendwas mit der Absende-Mailadresse des Webspaces herum gebastelt - jetzt funzt es.

Thx & lG

Don Manuel 16.06.2015 09:58

Dann wird es wohl ein fehlender reverse lookup gewesen sein.

Siehe:
E-Mail-Server ohne Reverse-Lookup


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

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag