Kontakt Formular auf statischer seite funktioniert bei Ionos nicht

Diskutiere Kontakt Formular auf statischer seite funktioniert bei Ionos nicht im PHP Forum im Bereich Programmierung; Hallo, wer kann mir weiterhelfen? ich hoste eine statische Seite in der ich ein Kontaktformular welches auf eine mail.php verweisst eingebunden...
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #1
F
FrankyR
Member
Beiträge
6
Punkte Reaktionen
0
Hallo, wer kann mir weiterhelfen?
ich hoste eine statische Seite in der ich ein Kontaktformular welches auf eine mail.php verweisst eingebunden habe.
Bei Stratos funktioniert dieses Script einwandfrei.
Leider funktioniert es bei IONOS nicht.
Jetzt weiss ich nicht mehr weiter da ich mich mit PHP Scripten nicht gut auskenne.
Auf einen hilfreichen Tipp würde ich mich sehr freuen
Vielen Dank
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #2
T
tk1234
Well-known member
Beiträge
103
Punkte Reaktionen
8
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #3
S
scatello
Well-known member
Beiträge
528
Punkte Reaktionen
44
Und: wie sieht das Script aus? Ich rate mal, in dem Script wird die Mail-Funktion von PHP benutzt und es kommen keine Mails an.
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #4
F
FrankyR
Member
Beiträge
6
Punkte Reaktionen
0
also mit "funktioniert nicht" meine ich , es werden keine mails versendet....

hier der der code aus der index.html:
<form method="post" class="contact__form" action="mail_old.php">

<div class="row">
<div class="col-12">
<div class="alert alert-success contact__msg" style="display: none" role="alert"> Your message was sent successfully. </div>
</div>
</div>

<div class="row">
<div class="col-md-12 form-group">
<input name="name" type="text" placeholder="Name *" required>
</div>
<div class="col-md-6 form-group">
<input name="email" type="email" placeholder="Email *" required>
</div>
<div class="col-md-6 form-group">
<input name="phone" type="text" placeholder="Ihre Nummer *" required>
</div>
<div class="col-md-12 form-group">
<input name="subject" type="text" placeholder="Betreff *" required>
</div>
<div class="col-md-12 form-group">
<textarea name="message" id="message" cols="30" rows="4" placeholder="Nachricht *" required></textarea>
</div>
<div class="col-md-12">
<input name="submit" type="submit" value="Absenden">
</div>
</div>
</form>

es muss doch speziell für IONOS einen fretigen code geben, in den ich meine email adresse eintrage und fertig ist die Sache oder??
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #5
F
FrankyR
Member
Beiträge
6
Punkte Reaktionen
0
hds-sb.de/
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #6
T
tk1234
Well-known member
Beiträge
103
Punkte Reaktionen
8
also mit "funktioniert nicht" meine ich , es werden keine mails versendet....
Und wie sieht der PHP-Code aus? Das Formular ist vermutlich nicht dafür verantwortlich dass die Mail nicht verschickt wird. Übrigens: das Formular ist defekt, die Felder haben keine Beschriftung (label-Elemente, placeholder-Attribute sind keine Beschriftung!).
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #7
T
tk1234
Well-known member
Beiträge
103
Punkte Reaktionen
8
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #8
F
FrankyR
Member
Beiträge
6
Punkte Reaktionen
0
den PHP code hatte ich doch angehängt??

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
# FIX: Replace this email with recipient email
$mail_to = "[email protected]";

# Sender Data
$subject = trim($_POST["subject"]);
$name = str_replace(array("\r","\n"),array(" "," ") , strip_tags(trim($_POST["name"])));
$email = filter_var(trim($_POST["email"]), FILTER_SANITIZE_EMAIL);
$phone = trim($_POST["phone"]);
$message = trim($_POST["message"]);

if ( empty($name) OR !filter_var($email, FILTER_VALIDATE_EMAIL) OR empty($phone) OR empty($subject) OR empty($message)) {
# Set a 400 (bad request) response code and exit.
http_response_code(400);
echo "Please complete the form and try again.";
exit;
}

# Mail Content
$content = "Name: $name\n";
$content .= "Email: $email\n\n";
$content .= "Phone: $phone\n";
$content .= "Message:\n$message\n";
# email headers.
# $headers = "From: $name <$email>";
$headers = "From: [email protected]' . "\r\n" . “Reply-To: $from” . “\r\n";

# Send the email.
$success = mail($mail_to, $subject, $content, $headers);
if ($success) {
# Set a 200 (okay) response code.
http_response_code(200);
echo "Thank You! Your message has been sent.";
} else {
# Set a 500 (internal server error) response code.
http_response_code(500);
echo "Oops! Something went wrong, we couldn't send your message.";
}
} else {
# Not a POST request, set a 403 (forbidden) response code.
http_response_code(403);
echo "There was a problem with your submission, please try again.";
}
?>
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #9
F
FrankyR
Member
Beiträge
6
Punkte Reaktionen
0
dieses php script funktioniert bei all meinen anderen Projekten die ich bei Stratos hoste....aber bei IONOS passiert garnix
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #10
S
Sempervivum
Well-known member
Beiträge
760
Punkte Reaktionen
125
Muss nicht immer ein Fehler im Skript sein, wenn Emails nicht gesendet werden. Du schreibst ja, dass es bei Strato funktioniert. Viele Provider verlangen, dass die from-Adresse mit der eigenen Domain übereinstimmt. Überprüfe das mal.
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #11
T
tk1234
Well-known member
Beiträge
103
Punkte Reaktionen
8
dieses php script funktioniert bei all meinen anderen Projekten die ich bei Stratos hoste....aber bei IONOS passiert garnix
Doch, es liefert einen 500er, die genaue Fehlermeldung dazu findest du - wie schon geschrieben - im Errorlog. Das Script wirft zwar auch einen 500er wenn mail() fehlschlägt, das dürfte aber eher nicht das Problem sein. Allerdings: wirf mail() raus und verwende eine Mailerklasse, das erhöht die Wahrscheinlichkeit dass die Mail auch ankommt und spart auch das händische Zusammenbasteln von Headern.
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #13
F
FrankyR
Member
Beiträge
6
Punkte Reaktionen
0
vielen Dank scatello aber den Link bekam ich schon von IONOS selbst zugesendet...leider kann ich damit nicht viel anfangen da ich wie gesagt mich mit PHP nicht so gut auskenne
weshalb ich ja das Problem habe....
wie krieg ich meine content tags siehe oben aus dem Kontakt Formular in den code von github???
ich blick da nicht durch???

# Mail Content
$content = "Name: $name\n";

hier der code von GITHUB

<?php
use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\SMTP;
use PHPMailer\PHPMailer\Exception;
require_once "vendor/autoload.php";
// Per Variable Ausnahmen aktivieren bzw. deaktivieren
$debug = true;
try {
// Instanz der PHPMailer-Klasse erstellen
$mail = new PHPMailer($debug);
if ($debug) {
// gibt einen ausführlichen log aus
$mail->SMTPDebug = SMTP::DEBUG_SERVER;
}
// Authentifikation mittels SMTP
$mail->isSMTP();
$mail->SMTPAuth = true;
// Login
$mail->Host = "smtp.ionos.de";
$mail->Port = 587;
$mail->Username = "[email protected]";
$mail->Password = "xxxxxxxxxxxxx";
$mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS;
$mail->setFrom('info@xxxxxxxxx,de', 'name');
$mail->addAddress('[email protected]', 'name');
$mail->addAttachment("/home/user/Desktop/beispielbild.png", "beispielbild.png");
$mail->CharSet = 'UTF-8';
$mail->Encoding = 'base64';
$mail->isHTML(true);
$mail->Subject = 'Der Betreff Ihrer Mail';
$mail->Body = 'Der Text Ihrer Mail als HTML-Inhalt. Auch <b>fettgedruckte</b> Elemente sind beispielsweise erlaubt.';
$mail->AltBody = 'Der Text als simples Textelement';
$mail->send();
} catch (Exception $e) {
echo "Message could not be sent. Mailer Error: ".$e->getMessage();
}
 
  • Kontakt Formular auf statischer seite funktioniert bei Ionos nicht Beitrag #14
T
tk1234
Well-known member
Beiträge
103
Punkte Reaktionen
8
$mail->isHTML(true);
$mail->Subject = 'Der Betreff Ihrer Mail';
$mail->Body = 'Der Text Ihrer Mail als HTML-Inhalt. Auch <b>fettgedruckte</b> Elemente sind beispielsweise erlaubt.';
$mail->AltBody = 'Der Text als simples Textelement';
Das ist doch eigentlich selbsterklärend: dein Inhalt von $content muss $mail->Body zugewiesen werden ($mail->Body = $content; ). Du hast allerdings keine HTML-Mails, deswegen kommen die Zeilen mit isHTML() und AltBody noch weg (einfach löschen).
 
Thema:

Kontakt Formular auf statischer seite funktioniert bei Ionos nicht

Oben Unten