[SUCHE] PHP Mailer Kontaktformular

Dieses Thema im Forum "Webentwicklung" wurde erstellt von matze-pe, 31. Mai 2006 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 31. Mai 2006
    Hallo,
    ich suche ein PHP Kontaktformular, das nur eine Datei ist.
    Es sollte folgende eingabefelder haben:
    Name*
    Icq
    Email*
    Homepage
    Betreff*
    TEXT*

    *= Pflichteingabe

    mfg
    matze-pe
     
  2. 31. Mai 2006
    geht das überhaupt in einer datei ?

    hab ich noch nie gesehen, waren bisher immer 3 inklusive danke-Datei
     
  3. 31. Mai 2006
    klar geht das


    <html>

    hier der code für die input felder

    </html>

    <?

    hier der php code
    mit der abfrage das er es erst abschicken soll, wenn man auf abschicken geklickt hat
    ?>

     
  4. 31. Mai 2006
    aber wie sendet man die daten von den eingabefeldern nach unten ?

    ich kenne das nur so:

    <form action="mail.php" method="POST">
    .
    .
    .
    </form>

    und dann die ganze mailfunktionen in der mail.php
     
  5. 31. Mai 2006
    Hallo,
    kann mir jemand ein script geben o.ä?
    mg
    matze-pe
     
  6. 31. Mai 2006
    kleines beispiel

    <form action="<? $_SERVER[PHP_SELF];?>" method="POST">
    <input type="text" name="name">
    <input type="text" name="icq">
    <input type="text" name="email">
    <input type="text" name="homepage">
    <input type="text" name="betreff">
    <textarea name="text"></textarea>
    <input type="submit" name="action">
    </form>

    <?
    if(isset($_POST['action']))

    {
    $name=$_POST['name'];
    $icq=$_POST['icq];
    $email=$_POST['email'];
    $homepage=$_POST['homepage];
    $betreff=$_POST['betreff'];
    $text=$_POST['text'];

    $Inhalt=$name;
    $Inhalt.=$icq;
    $Inhalt.=$email;
    $Inhalt.=$homepage;
    $Inhalt.=$text;

    $email_to="deine@emailadresse.de";

    if(mail($email_to,$betreff,$Inhalt,$email)){ echo "E-Mail wurde gesendet"; }
    }

    ?>

    so jettzt hab ich das mal so schnell gecoded *gg* musst mal in appache oder so reinhauen und gucken was fürn parser error kommt *gg* denk mal nicht das es fehler frei ist ansonsetn viel spaß mit dem script

    vlt ist ja was positives drin
     
  7. 31. Mai 2006
    halllo


    Parse error: syntax error, unexpected T_STRING, expecting ']' in C:\Programme\Xampp\xampp\htdocs\mail\index.php on line 18


    der kommt
    mfg
    matze-pe
     
  8. 31. Mai 2006
    hi hab ich auch gerade gesehen fixxe das mal gerade schnell
     
  9. 31. Mai 2006
    okay danke ;P
    10ner bekommste auf jeden schomma
    mfg
    matze-pe
     
  10. 31. Mai 2006
    ist gleich fertig das script edetiere dann gleich verfeiner es gerade noch ein bissechen


    *grml* dauert noch einen kleinen moment der sendet die email immer obwohl ich eine if abfrage drin hab ^^


    so müsste jetzt eigendlich funzen wenn du noch irgendwelche fehler findest einfach schreiben

    PHP:
    <form action="<? $_SERVER [ PHP_SELF ]; ?>" method="POST">
    <table border="0" cellpadding="5" cellspacing="0">
     <tr>
      <td align="right">*Name:</td>
      <td><input type="text" name="name"></td>
     </tr><tr>
      <td align="right">Icq</td>
      <td><input type="text" name="icq"></td>
     </tr>
    <tr>
      <td align="right">*Email</td>
      <td><input type="text" name="email"></td>
     </tr>

    <tr>
      <td align="right">Homepage</td>
      <td><input type="text" name="homepage"></td>
     </tr>
    <tr>
      <td align="right">*Betreff</td>
      <td><input type="text" name="betreff"></td>
     </tr>
    <tr>
      <td align="right">*Nachricht</td>
      <td><textarea name="text"></textarea></td>
     </tr></table>
    <input type="submit" name="action">
    </form>

    <?
    $name        
    = $_POST [ 'name' ];
    $icq         = $_POST [ 'icq' ];
    $email         = $_POST [ 'email' ];
    $homepage     = $_POST [ 'homepage' ];
    $betreff     = $_POST [ 'betreff' ];
    $text         = $_POST [ 'text' ];



    if(isset(
    $name ) and isset( $email ) and isset( $betreff ) and isset( $text ))
    {


    $Inhalt = "Name:  $name  \n" ;
    $Inhalt .= "Icq:  $icq  \n" ;
    $Inhalt .= "Email:  $email  \n" ;
    $Inhalt .= "Homepage:  $homepage  \n" ;
    $Inhalt .= "Nachricht:  $text  \n" ;

    $email_to = "deine@emailadresse.de" ;

    if(
    mail ( $email_to , $betreff , $Inhalt "FROM :  $email " )){
    echo 
    "Email wurde erfolgreich an  $email_to  gesendet" ;
    }


    }
    ?>


    viel spaß mit dem script
     
  11. 31. Mai 2006
    Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Programme\Xampp\xampp\htdocs\mail\index.php on line 52


    Liegt das am script?
    oder läuft das aufm webspace dann richtig?
     
  12. 31. Mai 2006
    schmeiß es aufm webspace *gg* da läuft es zu 100%

    du hast dann kein mail dienst bei xampp gestartet
     
  13. 1. Juni 2006
    Uhh, ganz unsicheres Script.
    Stichwort: Email Header Injection
    Referenz: http://www.nyphp.org/phundamentals/email_header_injection.php

    Alle User-Inputs vorher prüfen ! Es gibt immer ein paar böse die sowas ausnutzen

    pun1ca
     
  14. 1. Juni 2006
    Code:
    <form action="<? $_SERVER[PHP_SELF];?>" method="POST">
    <table width="400" border="0" cellspacing="1" cellpadding="5">
    <tr>
    <td valign=top>Name:</td>
    <td><input type="text" name="absender_name"></td>
    </tr>
    <tr>
    <td colspan=2 height=20></td>
    </tr>
    <tr>
    <td valign=top>Email:</td>
    <td valign=top><input type="text" name="absender_email"></td>
    </tr>
    <tr>
    <td colspan=2 height=20></td>
    </tr>
    <tr>
    <td valign=top>Homepage:</td>
    <td valign=top><input type="text" name="absender_homepage"></td>
    </tr>
    <tr>
    <td colspan=2 height=20></td>
    </tr>
    <tr>
    <td valign=top>Nachricht:</td>
    <td valign=top><textarea rows=8 cols=58 name="absender_nachricht"></textarea></td>
    </tr>
    <tr>
    <td colspan=2 height=20></td>
    </tr>
    <tr>
    <td></td>
    <td valign=top><input type="submit" name="submit" value="Abschicken"> <input type="reset" value="Zur&uuml;cksetzen"></td>
    </tr>
    </table>
    </form>
    <?php
    
    // Einfaches Form Mailer
    
    /* überprüfung ob der verschicken button gedrückt wurde */
    
    if(isset($_POST['submit'])) {
    
    $check_zero = true;
    
    } else {
    
    $check_zero = false;
    
    }
    
    
    /* überprüfung ob $absender_name ausgefüllt wurde */
    
    if(!empty($_POST['absender_name'])) {
    
    $check_one = true;
    
    } else {
    
    $check_one = false;
    
    }
    
    
    /* überprüfung ob $absender_email ausgefüllt wurde und ob die Email richtig ist */
    
    if(!empty($_POST['absender_email'])) {
    
    $check_two = true;
    
    } else {
    
    $check_two = false;
    
    }
    
    $absender_email = preg_replace("#[\;\#\n\r\*\'\"<>&\%\!\(\)\{\}\[\]\?\\/\s]#","",$_POST['absender_email']);
    
    if(!preg_match("/^.+\@(\[?)[a-zA-Z0-9\-\.]+\.([a-zA-Z]{2,4}|[0-9]{1,4})(\]?)$/",$absender_email)<1) {
    
    $check_two_alpha = true;
    
    } else {
    
    $check_two_alpha = false;
    
    }
    
    
    /* überprüfung ob $absender_nachricht ausgefüllt wurde */
    
    if(!empty($_POST['absender_nachricht'])) {
    
    $check_three = true;
    
    } else {
    
    $check_three = false;
    
    }
    
    /* überprüfungen der wichtigen eingaben */
    
    if($check_zero == 0 or $check_one == 0 or $check_two == 0 or $check_two_alpha == 0 or $check_three == 0) {
    
    echo "Eines der Pflichtfelder wurde entweder nicht ordnungsgemäß ausgefüllt oder du hast eins davon vergessen auzufüllen!\n
    Bitte kehre zurück und überprüfe deine Eingaben!";
    exit;
    }
    
    /* es werden ein paar sachen definiert */
    
    $email_empfaenger = 'jolle-pe@mail.ru';
    $email_betreff = 'Email betreff';
    
    $absender_name = $_POST['absender_name'];
    $absender_email = $absender_email;
    $absender_nachricht = $_POST['absender_nachricht'];
    
    /* gestaltung der email die an uns geht */
    
    $nachricht = "
    Diese Email wurde Verfasst von $absender_name <$absender_email>
    
    $absender_nachricht
    ";
    
    if(mail($email_empfaenger,$email_betreff,$nachricht,"From: $absender_email")) {
    
    echo "Vielen Dank, deine Nachricht wurde erfolgreich Versand!\nWir werden so Schnell wie möglich darauf antworten!";
    
    } else {
    
    echo "Es Tut uns Leid aber deine Nachricht konnte nicht Versand werden!\nVersuche es doch nocheinmal!\n\n
    Du kannst auch deinen Email Client Benutzen\n\nMeine Email: $email_empfaenger";
    
    }
    
    ?>
    </ceneter>
    </body>
    </html>
    
    Das habe ich mal aus ein paar scripten zusammengwewürfelt,
    aber ich habe noch keine email bekommen, das es funzt
     
  15. 1. Juni 2006
    omg ^^ unsicher ist das klar ... aber ich würd mal sagen der aufwand lohnt sich nur bei einer richtig wichtigen page ...
     
  16. 1. Juni 2006
    Es gibt bereits Bots die nur nach so lücken Scannen und automatisiert die Lücken ausnutzen, da ist es egal wie groß die Seite ist.
     
  17. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.