Ankündigung

Einklappen
Keine Ankündigung bisher.

Kontaktformular mit .txt Datei ausgabe

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Kontaktformular mit .txt Datei ausgabe

    Hallo zusammen.

    Ich habe ein kleines Problem mit meinem Kontaktformular.
    Im Grunde soll eine Datei mit dem PHP Code (siehe unten) erstellt und gespeichert werden.

    PHP-Code:
    <?php
    $dateiname 
    $telefon.".txt";
    if (
    file_exists($dateiname))
    {
    print 
    "Sie haben Ihre Stimme schon einen K&uuml;nstler gegeben!";
    }
    else
    {
    touch($dateiname);
    $fp fopen($dateiname"w");
    fwrite($fp"$Name"."n"."$Telefon"."n"."$Betreff"."n"."$Email"."n"."$Nachricht"."n"."$Date"."n");
    }
    ?>
    Die Datei wird auch angelegt nur sie bekommt nicht den zugewiesen Dateinamen.

    Hier mal die komplette "kontakt.php"

    PHP-Code:
    <?php
    $dateiname 
    $telefon.".txt";
    if (
    file_exists($dateiname))
    {
    print 
    "Sie haben Ihre Stimme schon einen K&uuml;nstler gegeben!";
    }
    else
    {
    touch($dateiname);
    $fp fopen($dateiname"w");
    fwrite($fp"$Name"."n"."$Telefon"."n"."$Betreff"."n"."$Email"."n"."$Nachricht"."n"."$Date"."n");
    }
    ?>

    <?php
    # Zuerst die Abfrage, ob an der URL "?senden" hängt

    if (isset($_GET['senden'])){

    # Dann werden die Daten auf Vollständigkeit geprüft:

    if (($_POST['vorname'] != '') && ($_POST['nachname'] != '') && ($_POST['email'] != '') && ($_POST['nachricht'] != '')){

    # Wenn alle erforderlichen Daten eingegeben wurden, werden die Benutzerangaben (falls vorhanden) in Variablen geschrieben

    $vorname $_POST['vorname'];
    $nachname $_POST['nachname'];
    $email $_POST['email'];
    $nachricht $_POST['nachricht'];
    if (empty(
    $_POST['telefon'])){$telefon "- Nicht angegeben -";} else {$telefon $_POST['telefon'];}

    # Dann werden Die Daten für die mail() Funktion in Variablen geschrieben

    $an "mail@mydomain.com";
    $von "Kontaktformular <$an>";
    $betreff "Nachricht von der Homepage";
    $header "From: $von\r\n";
    $header .= "Subject: $betreff\r\n";
    $header .= "Content-Type: text/html\r\n";
    $header .= "MIME-Version: 1.0\r\n";
    $msg "Jemand hat dir eine Nachricht von der Homepage geschickt:

    Name: 
    $vorname $nachname
    Email: 
    $email
    Telefon: 
    $telefon

    ---- Nachricht: ----
    $nachricht

    --------------------"
    ;

    # Falls es beim Senden der Email einen Fehler gibt, wird dies dem Besucher signalisiert

    if (mail($an$betreff$msg$header)){
    $rueckgabe '<span style="color: #008800;">Vielen Dank, die Nachricht wurde erfolgreich versandt.</span><br />';
    }else{
    $rueckgabe '<span style="color: #cc0000;">Beim Senden der Email ist ein Fehler aufgetreten.</span><br />';
    }
    } else {
    $rueckgabe '<span style="color: #cc0000;">Bitte alle Felder, die mit * markiert sind, ausfüllen.';
    }
    }else{
    $rueckgabe '';
    }
    echo 
    $rueckgabe;
    ?>

    <form action="<?php echo $_SERVER['PHP_SELF'];?>?senden" method="post">
    <table border="0">
    <tr>
    <td>Vorname:*</td>
    <td><input name="vorname" size="25" type="text" /></td>
    </tr>
    <tr>
    <td>Nachname:*</td>
    <td><input name="nachname" size="25" type="text" /></td>
    </tr>
    <tr>
    <td>Email:*</td>
    <td><input name="email" size="25" type="text" /></td>
    </tr>
    <tr>
    <td>Tel.:</td>
    <td><input name="tel" size="25" type="text" /></td>
    </tr>
    <tr>
    <td>Nachricht:*</td>
    <td><textarea cols="50" rows="3" name="nachricht"></textarea></td>
    </tr>
    <tr>
    <td colspan="2"><center><input type="submit" value="Senden" /></center></td>
    </tr>
    </table>
    </form>
    würde mich freuen wenn einer von euch den FEHLER findet, bin schon seit 2 Stunden am basteln und sehe den Wald voller Bäume nicht mehr!


  • #2
    Bitte verwende in Zukunft [PHP][/PHP] - Tags, wenn du PHP-Code posten möchtest.

    Zum Problem: Welchen Namen bekommt sie denn dann? Woher kommt $telefon?

    Du musst die Datei nach dem Öffnen auch wieder schließen. [MAN]fclose[/MAN]
    http://hallophp.de

    Kommentar


    • #3
      Du belegst die ganzen Variablen erst am Ende nachdem du schon mehrmals versucht hast, auf sie zuzugreifen. So funktioniert das nicht
      @fschmengler - @fschmengler - @schmengler
      PHP Blog - Magento Entwicklung - CSS Ribbon Generator

      Kommentar


      • #4
        Stelle bitte das error_reporting auf E_ALL und display_errors auf 1 - dann hat PHP die Chance, dich auf solche Fehler wie von fab angesprochen selber hinzuweisen.

        Kommentar


        • #5
          sorry ich versteh nur Bahnhof!
          wie müsste das denn der Code aussehen?

          Kommentar


          • #6
            Siehe Post #4:

            Schreib mal
            Code:
            <?php
            error_reporting(-1);
            ini_set('display_errors', 1);
            an den Anfang deiner Datei und behebe die Fehler.
            http://hallophp.de

            Kommentar


            • #7
              In deinem fwrite-Befehl ganz oben:

              fwrite($fp, "$Name"."n"."$Telefon"."n".

              schreibst du Variablen $Name, $Telefon usw. weg, die erst später im Script aus dem $_POST-array gebildet werden.

              Die gespeicherten Werte trennst du auch noch mit Kleinbuchstaben n.

              Bau das Error Reporting ein und schau dir mal genau an, was da passiert bzw. was passieren soll.
              PHP-Code:
              if ($var != 0) {
                
              $var 0;

              Kommentar


              • #8
                em sorry ich hab echt kein Plan was ihr meint, kann nicht einer von euch mal an Hand eins Beispieles gerade eure Verbesserungen posten. bin wie gesagt ein Nub in der Sache!

                Danke!

                Kommentar


                • #9
                  [MOD: Thread verschoben]
                  http://hallophp.de

                  Kommentar


                  • #10
                    Du willst dafür noch ein Beispiel?? Bitte:

                    PHP-Code:
                    // Falsch:
                    echo $variable;
                    $variable 'Hallo Welt'
                    PHP-Code:
                    // Richtig:
                    $variable 'Hallo Welt';
                    echo 
                    $variable
                    Oder anders gesagt, du hast dich offenbar beim zusammenkopieren von Code in der Reihenfolge vertan.
                    @fschmengler - @fschmengler - @schmengler
                    PHP Blog - Magento Entwicklung - CSS Ribbon Generator

                    Kommentar


                    • #11
                      Ok! ich habe gedacht das ich den Code einfach reinschreibe (CTRL+V) und dann läuft die Kiste.

                      Dann fangen wir halt an es neu zuschreiben.

                      1. Wie fange ich an dieses Script ordentlich zum laufen zu bringen.

                      Bin echt ein NUB daher die Anfänge in verständlichen Worte verfassen, damit ich auch folgen kann. ich bin gewillt durch Anleitung es richtig zuschreiben.

                      Learning by Doing!

                      Kommentar


                      • #12
                        Bin echt ein NUB daher die Anfänge in verständlichen Worte verfassen, damit ich auch folgen kann.
                        Sach mal, gehts noch?!
                        --

                        „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                        Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                        --

                        Kommentar


                        • #13
                          Wie baue ich ein Auto?
                          Ich schmeiße alle Einzelteile in eine Kiste, schüttle kräftig, und wenn das Ding dann nicht fährt dann such ich mir ein Forum.
                          PHP-Code:
                          if ($var != 0) {
                            
                          $var 0;

                          Kommentar


                          • #14
                            Das ist das schöne an Seifenkistenwagen. Da hat man gleich ne Kiste zum Wegtragen resp. -werfen.
                            --

                            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                            --

                            Kommentar


                            • #15
                              Was ist denn hier los.
                              Ja dann sag ich nur danke für die Hilfe! schön das ich hier als PHP Anfänger so nett begrüßt wurde!

                              Auf bald und bis dahin.

                              Ps: falls sich doch einer erbarmt ..., denn jeder fängt mal klein an!

                              Kommentar

                              Lädt...
                              X