Kontaktformular - bräuchte Hilfe bei Anpassung

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

  • Kontaktformular - bräuchte Hilfe bei Anpassung

    Hallo.
    Für euch ist das vermutlich sehr einfach, für mich, die sich gerade erst neu mit php beschäftigt, ist alles komplett unübersichtlich. Ich entschuldige mich also schon mal, falls man genervt ist von "schon hundert mal behandelten Themen".

    Ich habe ein Script für ein Kontaktformular heruntergeladen und müsste es jetzt an mehreren Punkten abändern, bzw. hätte gerne noch ein zwei weitere Funktionen und mehrere Fragen.

    Vielleicht könnte mir jemand freundlicherweise helfen.

    Als erstes:
    Es gibt in diesem Script eine Möglichkeit, über eine Checkbox, eine Kopie der mail an den absender zu schicken.
    PHP-Code:
    // mail Kopie an User und Aktivierung der Checkbox für Mailkopie
    define('MAIL_KOPIE',     0); # kann mit 0 deaktiviert werden 
    Das kann ich mit 0/1 an- und abschalten. Ich würde aber gerne immer, wenn jemand eine Mailadresse (mailadresse soll keine pflicht sein) angibt, dass eine Art Bestätigungsmail an den Sender geschickt wird, also ohne Wahlmöglichkeit. Wie kann ich das ohne Checkbox machen? Da muss ich wohl da was ändern bei diesem
    PHP-Code:
     if(defined('MAIL_KOPIE') && MAIL_KOPIE == && $mailKopie == 1
    ändern.
    Eigentlich möchte ich auch keine einfache Kopie, sondern sowas wie "Sie haben kürzlich mit uns Kontakt aufgenommen, wir werden uns so schnell wie möglich bei ihnen melden". wo muss ich das ändern?
    PHP-Code:
         }
            
            
    // Mailbedingungen in From von MIME und HTML
            
    $header  'MIME-Version: 1.0'."\r\n";
            
    $header .= 'Content-type: text/html; charset='MAILCHARSET ."\r\n";
            
    $header .= 'From: <'MAIL_SENDER .'>';
            
            if(isset(
    $htmlAddress[$m_anrede])) { $anrede $htmlAddress[$m_anrede]; }
            else { 
    $anrede ''; }
            
            
    // Mitteilungstext für den Seiteninhaber
            
    $mailTextWM sprintf("%s\r\nAnrede: %s\n\rVorname Name: %s %s\n\rStrasse / HsNr: %s %s\n\rPLZ 
                                 Wohnort: %s %s\n\rTelefon: %s %s\n\rE-Mail: %s\n\rMitteilung:\n\n\r%s\r\n\nDateiname: 
                                 %s\r\n\n\nMitgeteilt am: %s"
    ,
                                    
    STARTTEXT
                                    
    $anrede
                                    
    $m_vorname
                                    
    $m_fname
                                    
    $m_strasse
                                    
    $m_hausnummer
                                    
    $m_plz
                                    
    $m_ort
                                    
    $m_vw
                                    
    $m_rn
                                    
    $m_email
                                    
    $m_mitteilung
                                    
    $fileNameAdmin,  
                                    
    date('d.m.Y, H:i:s'));
                        
            
    // E-Mail an Seiteninhaber wird gesendet.
            
    mail(MAIL_SENDERMAIL_SUBJECT_A$mailTextWM$header);
               
            
    // Bestätigungsmail an Absender
            
    if(defined('MAIL_KOPIE') && MAIL_KOPIE == && $mailKopie == 1) {
               
                
    // Textzusammenstellung für den Absender
                
    $msgUser sprintf(    $USER_MAIL_TEXT,
                                    
    $anrede
                                    
    $m_vorname
                                    
    $m_fname
                                    
    $m_strasse
                                    
    $m_hausnummer
                                    
    $m_plz
                                    
    $m_ort
                                    
    $m_vw
                                    
    $m_rn
                                    
    $m_email
                                    
    $m_mitteilung
                                    
    $fileNameUser);
                

                
    // Senden der Bestätigungsmail an den Formularausfüllenden.
                
    mail($m_emailMAIL_SUBJECT_K$msgUser$header);

            }
            
            
    // Nun leite um auf die Empfangsbestätigungs-Seite emailok.php.
            
    header('Location: '.LOCATION);
            exit();
        } 
    Eine weitere Frage wäre, wie mache ich das, dass ich dem Script sage, dass dass die Mail eben nur verschickt wird, wenn jemand eine Mailadresse angegeben hat und sonst nicht? Des weiteren würde ich gerne die ausgewählte Anrede in dieser Bestätigungsmail verwenden, also "Sehr geehrte Frau", wenn Anrede="Frau" und das Pendant für "Herr".
    EDIT:
    Zeilenumbrüche sponsored by Kropff
    Zuletzt geändert von Kropff; 23.08.2009, 15:04.

  • #2
    Zitat von schiefness Beitrag anzeigen
    Ich würde aber gerne immer, wenn jemand eine Mailadresse (mailadresse soll keine pflicht sein) angibt, dass eine Art Bestätigungsmail an den Sender geschickt wird, also ohne Wahlmöglichkeit. Wie kann ich das ohne Checkbox machen? Da muss ich wohl da was ändern bei diesem
    PHP-Code:
     if(defined('MAIL_KOPIE') && MAIL_KOPIE == && $mailKopie == 1
    ändern.
    Du kannst das ganz einfach über eine Bedingung machen:
    PHP-Code:
    if (!empty($_POST['email'])
    {
      
    define('MAIL_KOPIE'1);
    }
    else
    {
      
    define('MAIL_KOPIE'0);

    Zitat von schiefness Beitrag anzeigen
    Eigentlich möchte ich auch keine einfache Kopie, sondern sowas wie "Sie haben kürzlich mit uns Kontakt aufgenommen, wir werden uns so schnell wie möglich bei ihnen melden". wo muss ich das ändern?
    Du musst einfach den Wert der Variable $mailTextWM deinen Wünschen anpassen.

    Peter
    Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
    Meine Seite

    Kommentar


    • #3
      vielen dank, peter.

      jetzt ist das passiert, was immer passiert, wenn ich versuche, ein kontaktformular anzupassen. ich kriege eine leere weisse seite, wenn ich es hochgeladen habe.

      naja, ich werde dann noch mal von vorne anfangen.

      Kommentar


      • #4
        Schau dir mal das hier an.

        Peter
        Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
        Meine Seite

        Kommentar


        • #5
          Zitat von Kropff Beitrag anzeigen
          Schau dir mal das hier an.

          Peter
          das habe ich angeguckt. danke für den Link. ich denke aber, dass ich keinen Syntaxfehler oder wie man das nennt gemacht habe. es funktioniert auch, so lange ich einfach nur Felder verändere, also lösche oder andere hinuzufüge oder die Optionen für die Felder ändere.

          Es gibt aber Sachen, von denen ich nicht verstehe, warum sie da sind, was ihre Funktion ist und warum sie an dieser stelle stehen.

          das zum Beispiel:
          PHP-Code:
          // wenn die Liste erweitert werden muss einfach ein , und dann die nächstfolgende
          // Zahl. Bsp: , 4 => 'irgendwas'
          // ); muss immer vorhanden sein
          $htmlAddress = array(=> 'Optional'=> 'Frau'=> 'Herr'=> '<a class="iAs" classname="iAs" style="font-weight: normal !important; text-decoration: underline 
          !important; color: rgb(0, 100, 0) !important; border-bottom-color: rgb(0, 100, 0) !important; border-bottom-width: 0.1em !important; border-bottom-style: solid !important; 
          padding-bottom: 1px !important; background-color: transparent !important; " href="#" target="_blank" itxtdid="8024866">Firma</a>'
          ); 
          in Verbindung mit dem
          PHP-Code:
          // absoluter path für das <a class="iAs" classname="iAs" style="font-weight: normal !important; text-decoration: underline !important; color: rgb(0, 100, 0) !important; 
          border-bottom-colorrgb(01000) !importantborder-bottom-width0.1em !importantborder-bottom-stylesolid !importantpadding-bottom1px !important
          background-colortransparent !important" href="#" target="_blank" itxtdid="11116176">speichern</a> der hochzuladenden Datei
          // die Variable $_SERVER['DOCUMENT_ROOT'] ist das Hauptrootverzeichnis des Server
          // ergänze nun das Verzeichnis, in welches die Dateien gespeichert werden und 
          // hänge an das Ende ein / (Beispiel: $_SERVER['DOCUMENT_ROOT'] .'/images/
          define('FILE_SAVE_PATH'$_SERVER['DOCUMENT_ROOT'] .'/images/');

          define('ENCTYPE'' enctype="multipart/form-data"'); 
          Ausserdem wollte ich das löschen
          PHP-Code:
          if(intval(_gp('action')) == 1) {

              
          // Prüft, ob die E-Mail-Adresse angegeben wurde.
              
          if($m_email _gp('email')) {
                  
          $error_a checkMail($m_email);
              } else {
                  
          $error_a 8;
              } 
          und durch das, was Du geschrieben hast ersetzen, aber das funktioniert nicht.

          Grundsätzlich verstehe ich nicht, warum eine php-Seite gar nicht mehr angezeigt wird, wenn irgendwo ein Fehler auftritt.
          Zuletzt geändert von schiefness; 23.08.2009, 23:34. Grund: Umbrüche gemacht

          Kommentar


          • #6
            Grundsätzlich verstehe ich nicht, warum eine php-Seite gar nicht mehr angezeigt wird, wenn irgendwo ein Fehler auftritt.
            Das hat mit dem error_reporting zu tun, daher auch der Link. In so einem Fall wird normalerweise ein Fehler ausgegeben. Wenn dem bei dir nicht so ist, dann stimmen die Einstellungen nicht.

            Und bitte brich deinen Quellcode um. Ich habe keine Lust, kilometerweit nach rechts zu scrollen.

            Danke
            Peter
            Zuletzt geändert von Kropff; 23.08.2009, 21:20.
            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
            Meine Seite

            Kommentar

            Lädt...
            X