PHP Kontaktformular funktioniert nicht auf Host Europe?

6 Antworten

Was genau daran geht nicht und wie sieht die Programmierung des Formulars aus?

Woher ich das weiß:Berufserfahrung – mit dem Internet verbunden seit 1993

younow 
Beitragsersteller
 19.03.2017, 21:13

Wenn ich es bei bplaced ausprobiert habe, habe ich immer die Mail bekommen mit den Daten die in das Formular eingeben worden sind. Bei Hosteurope funktioniert von der Website her alles, also ich bekomme auf der Website auch die Bestätigung dass das Kontaktformular erfolgreich abgesendet wurde, bekomme aber nie die Email mit den in das Kontaktformular eingegeben Daten 

0
threadi  19.03.2017, 21:29
@younow

Schön. Ohne Quellcode kann man dazu aber nichts sagen. Im Zweifel wende dich an deinen Hoster damit.

0
younow 
Beitragsersteller
 19.03.2017, 21:30
@threadi
<?php

$vorname = $_POST['vorname'];
$nachname = $_POST['nachname'];
$email = $_POST['email'];
$telefon = $_POST['telefon'];
$nachricht = $_POST['nachricht'];

//Formularkontrolle müsste noch hier hin

$empfaenger = "fiftyeightstudios@gmail.com";
$absendername = "Kontaktformular";
$absendermail = $email;
$betreff = "Neue Nachricht über Kontaktformular";
$text = "Es ist eine neue Nachricht über das Kontaktformular eingetroffen. Folgende Daten wurden übermittelt:

Name, Vorname: ".$nachname.", ".$vorname."
E-Mail: ".$email."
Telefonnummer: ".$telefon."
Nachricht:
".$nachricht;
mail($empfaenger, $betreff, $text, "From: $absendername <$absendermail>");

echo('Vielen Dank! Wir melden uns schnellsmöglich bei Ihnen.');

?>
0
younow 
Beitragsersteller
 19.03.2017, 21:31
@younow

Das ist die Absenden.php

0
younow 
Beitragsersteller
 19.03.2017, 21:31
@younow
  $('#frmKontakt').submit(function() {

var formControl = true;

var frmGrpVorname = $('#frmGrpVorname');
var frmGrpNachname = $('#frmGrpNachname');
var frmGrpEmail = $('#frmGrpEmail');
var frmGrpTelefon = $('#frmGrpTelefon');
var frmGrpNachricht = $('#frmGrpNachricht');

frmGrpVorname.removeClass('has-error');
frmGrpNachname.removeClass('has-error');
frmGrpEmail.removeClass('has-error');
frmGrpTelefon.removeClass('has-error');
frmGrpNachricht.removeClass('has-error');

var vorname = $('#vorname').val();
var nachname = $('#nachname').val();
var email = $('#email').val();
var telefon = $('#telefon').val();
var nachricht = $('#nachricht').val();

if(vorname == '') {
formControl = false;
frmGrpVorname.addClass('has-error');
}

if(nachname == '') {
formControl = false;
frmGrpNachname.addClass('has-error');
}
if(email == '') {
formControl = false;
frmGrpEmail.addClass('has-error');
}

if(nachricht == '') {
formControl = false;
frmGrpNachricht.addClass('has-error');
}

if (formControl) {
$.ajax({
type: 'POST',
url: 'absenden.php',
data: {vorname:vorname, nachname:nachname, email:email, telefon:telefon, nachricht:nachricht }
}).done(function(message){
var erfolgsmeldung = $('#erfolgsmeldung');
erfolgsmeldung.html(message);
erfolgsmeldung.addClass('alert');
erfolgsmeldung.addClass('alert-success');
});
}

return false;
});
0
threadi  19.03.2017, 21:35
@younow

Du nutzt hier die mail()-Funktion von PHP zum Senden. Darauf sollte man heutzutage verzichten. Verwende zum Senden von E-Mails am besten den phpmailer und konfiguriere ihn so, dass Du mit SMTP-Authentifizierung E-Mails sendest.

Abgesehen davon hast Du oben auch von "deinem Server" gesprochen. Ist das ein Root-Server? Dann müsstest Du, wenn Du die mail()-Funktion weiter nutzen willst, diesen auch richtig einrichten damit das funktioniert.

1
younow 
Beitragsersteller
 19.03.2017, 21:39
@threadi

Was müsste ich denn machen um dies mit einem PHP Mailer zu machen? Bin auf dem gebiet leider noch nicht sehr bewandert. Also mein Server ist es auch nicht. Es ist einfach Webspace den ich bei Hosteurope gemietet habe :0

Aber vielen Dank schonmal für diese Informationen :) wäre super wenn du mir noch weiterhelfen könntest 

0
kuechentiger  20.03.2017, 10:54
@threadi

Wieso lesen sich eigentlich so selten mal Leute die FAQ ihres Anbieters durch?

1
younow 
Beitragsersteller
 22.03.2017, 13:30
@kuechentiger

was meinst du? wurde alles gemacht aber funktioniert trotzdem nicht :(

0

Unterstützt der Host php?
Und hast du es mal so versucht, das Formular auf bplaced.net zu laden und über iframe in deine Seite zu fügen?

Hast du im KIS die ausgehende Email adresse konfiguriert? Das geht irgendwo in den Scripteinstellungen. Sonst geht das mailen nicht, da die Mails sonst geblockt werden.

Kann sein, dass bei hosteurope die PHP-Erweiterung sendmail nicht installiert ist und du deshalb keine Mail bekommst


threadi  19.03.2017, 21:04

sendmail ist keine PHP-Erweiterung sondern ein System-Programm, welches E-Mails entgegennehmen und versenden kann - nicht nur von PHP.

0

Was genau geht nicht? Vllt ist die php version eine andere und dein script ist mit der version nicht kompatibel