Der Martin: Formular an fremden Server schicken

Beitrag lesen

Moin,

ein Kunden-Server scheint trotz Erfolsmeldung der mail() Funktion die Mail nicht weiterzuleiten.

dazu hat dedlfix ja schon etwas gesagt. Die Rückmeldung von mail() ist - auf die traditionelle gelbe Post übertragen - nur eine Bestätigung, dass du den Brief in den gelben Kasten geworfen hast. Was das für die Zustellung bedeutet, wissen wir ja: Schätzungen zufolge gehen 5..10% der Briefsendungen auf dem Postweg verloren, ein großer Teil kommt nach einer mehr als zehntägigen Odyssee durch die Republik erst beim Kunden an, und immer häufiger schlagen sie irgendwann wieder beim Absender auf mit dem Vermerk "Empfänger unbekannt", obwohl die Adresse völlig richtig ist.
Für e-Mail gilt Entsprechendes, nur dass die Fehlerquote hier deutlich geringer ist.

 <form action="http://meins.de/send-reservation.php" method="post">

Doch danach erscheint wieder die Kundenseite, ...

Wieder? Wird denn zwischendurch (also beim Absenden) etwas anderes angezeigt?

obwohl in der send-reservation.php gar keine Display-Ausgabe erfolgt.

Was sendet denn send-reservation.php überhaupt als Antwort? Einfach "nichts" kann nicht sein; selbst wenn das PHP-Script keine Ausgaben macht, kümmert sich der Webserver wenigstens darum, dass eine korrekte HTTP-Antwort mit dem Status 200/OK und Nutzdatenlänge 0 kommt. Da würde ich erwarten, dass der absendende Browser dann eine leere Seite anzeigt; ich könnte mir aber auch vorstellen, dass er in diesem Fall die zuvor angezeigte Seite einfach stehenlässt, weil er keine neuen Inhalte zum Anzeigen hat.

Ist das sowas wie bei Ajax - fremder Server verboten?

Nein. Das ist erlaubt und völlig in Ordnung.

So long,
 Martin

PS: Bitte benutze für Beispiele die dafür vorgesehenen Domainnamen wie etwa example.net, example.com oder *.example anstatt erfundener, aber real existierender Domainnamen. Ich glaube nicht, dass die Telekom über den Gebrauch einer ihrer Domainnamen so begeistert ist.