Antworten auf deine Fragen:
Neues Thema erstellen

PHP-Mailer: Kontaktformular spinnt. Hilfe!

Niksda

Designgrieche

Freunde, ich bin mal wieder auf eure Expertise angewiesen. es geht um (julianmaierhauff.com)

Kann mir jemand sagen warum das Formular nicht mehr funktioniert?
Statt auf den header mit dem status=thanks weiterzuleiten krieg ich diesen Fehler:

"301:
The document name you requested (/contact/contact.php&status=thanks) could not be found on this server. However, we found documents with names similar to the one you requested."


das ist mein php-formular:
PHP:
<?php 
require_once ($_SERVER['DOCUMENT_ROOT'] . "/included/config.php");
$pageTitle = "contact";
 
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $name = trim($_POST["name"]);
    $email = trim($_POST["email"]);
    $betreff = trim($_POST["betreff"]);
    $message = trim($_POST["message"]);

    if ($name == "" OR $email == "" OR $betreff == "" OR $message == "") {
        $error_message = "Bitte geben Sie Ihren Namen, Ihre E-Mail-Adresse und Ihre Nachricht ein.";
    }

    if (!isset($error_message)) {
        foreach( $_POST as $value ){
            if( stripos($value,'Content-Type:') !== FALSE ){
                $error_message = "Es gab ein Problem mit den Angaben, die Sie gemacht haben.";
            }
        }
    }

    if (!isset($error_message) && $_POST["address"] != "") {
        $error_message = "Ihr abgeschicktes Formular enth&auml;lt einen Fehler.";
    }

    require_once(ROOT_PATH . "included/class.phpmailer.php");
    $mail = new PHPMailer();

    if (!isset($error_message) && !$mail->ValidateAddress($email)){
        $error_message = "Bitte geben Sie eine g&uuml;ltige E-Mail-Adresse an.";
    }

    if (!isset($error_message)) {
        $email_body = "";
        $email_body = $email_body . "Name: " . $name . "<br>";
        $email_body = $email_body . "Email: " . $email . "<br>";
        $email_body = $email_body . "Betreff: " . $betreff . "<br>";
        $email_body = $email_body . "Message: " . "<br>" . $message;

        $mail->SetFrom($email, $name);
        $address1 = "email1@mail.com";
		$address2 = "email2@mail.com";
		$mail->AddAddress($address1, "Name1");
		$mail->AddCC($address2, "Name2");
        $mail->Subject    = "Betreff: " . $betreff . " / Nachricht von: " . $name;
        $mail->MsgHTML($email_body); 

        if($mail->Send()) {
            header("Location:" . BASE_URL . "contact/contact.php?status=thanks");
            exit;
        } else {
          $error_message = "Es gibt ein Problem beim Senden der E-Mail: " . $mail->ErrorInfo;
        }

    }
}
include (ROOT_PATH . "included/header.php");
?>

Inputs im Html:

HTML:
<div id="contactform" class="grid_6 omega">
  <?php if (isset($_GET["status"]) AND $_GET["status"] == "thanks") { ?>
  <p class="yellow">Vielen Dank für Ihre Nachricht!</p>
  <?php } else { ?>
  <?php
                    if (!isset($error_message)) {
                        echo '<p>Bitte füllen Sie das Formular aus um mir eine Nachricht zu schicken!</p>';
                    } else {
                        echo '<p class="message">' . $error_message . '</p>';
                    }
                ?>
  <br />
  <form method="post" action="<?php echo BASE_URL; ?>pages/contact/contact.php">
    <table>
      <tr>
        <label for="name">Name</label>
        <input type="text" name="name" id="name" value="<?php if (isset($name)) { echo htmlspecialchars($name); } ?>">
          </td>
      </tr>
      <tr>
        <label for="email">E-Mail</label>
        <input type="text" name="email" id="email" value="<?php if(isset($email)) { echo htmlspecialchars($email); } ?>">
          </td>
      </tr>
      <tr>
        <label for="betreff">Betreff</label>
        <input type="text" name="betreff" id="betreff" value="<?php if(isset($betreff)) { echo htmlspecialchars($betreff); } ?>">
          </td>
      </tr>
      <tr>
        <label for="message">Nachricht</label>
        <textarea name="message" id="message"><?php if (isset($message)) { echo htmlspecialchars($message); } ?>
</textarea>
      </tr>
      <tr style="display: none;">
        <th> <label for="address">Address</label>
        </th>
        <td><input type="text" name="address" id="address">
          <p> Bitte lassen Sie dieses Feld leer.</p></td>
      </tr>
    </table>
    <input type="submit" value="Senden">
  </form>
  <?php } ?>
</div>

Zusätzlich noch zu wissen:
Ich benutze eine modifizierte Bootstrap .htaccess-Datei. (könnte auch daran liegen?)

LG, Dank im Voraus,

~Niksda.
 
Zuletzt bearbeitet:

Duddle

Posting-Frequenz: 14µHz

AW: PHP-Mailer: Kontaktformular spinnt. Hilfe!

Ich benutze eine modifizierte Bootstrap .htaccess-Datei. (könnte auch daran liegen?)

Ja.

Ausserdem: woher kommt BASE_URL? Und warum ist das Ziel des Formulars "pages/contact/contact.php", obwohl die Seite nicht existiert?


Duddle
 

Niksda

Designgrieche

AW: PHP-Mailer: Kontaktformular spinnt. Hilfe!

Ach ich Depp!
das ganze war mal im ordner 'pages', dem hab ich mich aber entledigt.
habe es oben geändert im Form anscheinend nicht...

Weißt du warum es immer noch auf pages umleitet, obwohls ich es gerade geändert habe?

In der htacessdatei werden die dateiendungen ausgeblendet für die URl, muss ich nen bestimmes Mod Rewrite schreiben damit das Get auch bei Ausblendung funzt?

BASE_URL kommt aus ner config datei (ist quasi nur der root, falls ich mal hoster wechseln muss)

EDIT: Hat sich erledigt. Kann mir jemand schnell mit dem htaccess schnipsel helfen um auch die GET var aus der URL zu kriegen?
 
Zuletzt bearbeitet:
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Keine Mitglieder online.

Statistik des Forums

Themen
118.565
Beiträge
1.538.067
Mitglieder
67.488
Neuestes Mitglied
Andrew56524
Oben