[PHP] Formular Problem (mit PHP)

Dieses Thema im Forum "Webentwicklung" wurde erstellt von eVeReSt, 21. August 2007 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 21. August 2007
    Formular Problem (mit PHP)

    Hallo!

    Ich bin im moment dran ein Kontaktformular für eine Seite zu basteln. Dies soll mit HTML und PHP (PHP anweisungen in einer externen Datei) laufen. Die 08/15 Funktionen funktionieren alle auch wunderbar. Nun möchte ich aber, dass man per Drop-Down-Menü eine Person auswählen kann und dann das Mail an die entsprechende Person (die ausgewählt wurde) geschickt wird. Für den HTML Code habe ich folgendes gemacht:

    HTML:
    <select name="wer" size="1" class="kontaktfelder" >
    <option selected="selected">Person 1</option>
    <option>Person 2</option>
    </select> 
    Der PHP Code sieht so aus:

    PHP:
    switch( $_POST [ 'wer' ]) {
     case
    "??" :
     
    $mail  "person1@irgendwas.com" ;
     break;
     case
    "??" :
     
    $mail  "person2@irgendwas.com" ;
     break;
     default:
     
    $mail  " $admin " ;
     break;
     }
    Nun mein Problem ist, dass ich nicht weiss was bei case"da" (im PHP Code) hineinkommt. Ich habe schon

    case"1"
    case"2"

    und

    case"Person 1"
    case"Person 2"

    probiert, jedoch ohne Erfolg. Wie kann ich in HTML angeben welches das Funktion 1 bzw. 2 ist, so dass PHP das interpretieren kann??


    Zweites Problem:

    Ich möchte gerne auch eine Checkbox machen (im Formlular), bei der der User ein Häckchen machen kann, wenn er eine Kopie des Mails bekommen will. Nur, wie funktioniert das? Geht das mit PHP, oder muss ich da Java anwenden?

    Hoffentlich konnte ich meine Probleme einigermassen erklären, wenn nicht einfach Fragen !
     
  2. 21. August 2007
    AW: Formular Problem (mit PHP)

    du musst deinen html code ändern
    jedes option braucht ein value
    HTML:
    <select name="wer" size="1" class="kontaktfelder" >
    <option selected="selected" value="person1">Person 1</option>
    <option value="person2">Person 2</option>
    </select>
    dann steht halt entsprechend der ausgewählte value-wert in deinem $_POST['wer']
     
  3. 21. August 2007
    AW: Formular Problem (mit PHP)

    Checkbox:
    Code:
    <input type="checkbox" name="kopie" />
    
    PHP:
    PHP:
    <? php
     $Kopie 
    = ( $_POST [ 'kopie' ]== 'on' ) ?  true  false ;
    ?>
    Mit Java musst du nichts machen, außerdem denk ich mal du meinst JavaScript.
     
  4. 21. August 2007
    AW: Formular Problem (mit PHP)

    Vielen Dank beiden Antwortern! Genau das was ich gesucht habe!! Nun aber habe ich zu den beiden Dingen noch fragen:

    1. Mailversand

    Hab das Script genauso bearbeitet wie mir Schmitz es mir erklärt hat. Nur leider funktioniert das ganze nicht, bzw. es wird immer an den default User gesandt. Hier mal der Code:

    HTML:
     
    <select name="an" size="1" class="kontaktfelder" >
     <option value="a" selected="selected">Person1</option>
     <option value="b">Person2</option>
    </select> 
    
    PHP:
    switch( $_POST [ 'wer' ]) {
     case
    "a" :
     
    $an  "person1@jfklaöjda.jalödfj" ;
     break;
     case
    "b" :
     
    $an  "person2@fjdlasdjföal.osdajfp" ;
     break;
     default:
     
    $an  " $admin " ;
     break;
     }
    Ist da was falsch??

    2. Kopie schicken

    PHP:
    <? php
    $Kopie 
    = ( $_POST [ 'kopie' ]== 'on' ) ?  true  false ;
    ?> 
    Muss das Häckchen nach "$Kopie = ($_POST['kopie']=='on')" auch hinein? Kann ich zwei mal die Mailfunktion in einem PHP Script benutzen? Was soll bei false hinein? Ich will ja nur schicken wenn ich true habe, sonst soll er einfach nix machen, soll dort einfach kein false hinkommen? ;(

    €: @Telefonzelle, meine natürlich JavaScript und nicht Java .
     
  5. 21. August 2007
    AW: Formular Problem (mit PHP)

    Du kannst die mail() Funktion so oft benutzen wie es dein Hoster zulässt.
    PHP:
    $Kopie  = ( $_POST [ 'kopie' ]== 'on' ) ?  true  false ;
    kannst du so stehen lassen, dann später mit if($Kopie) { } else { } überprüfen.
    Alternative:
    PHP:
    <? php  if( $_POST [ 'kopie' ]== 'on' $Kopie  true ; else  $Kopie  false
    Das ist nur ein wenig kürzer..

    mfg

    EDIT: Oder was meinst du!?! ^^
     
  6. 22. August 2007
    AW: Formular Problem (mit PHP)

    Ich denke du meinst was anderes als ich .

    Wenn
    PHP:
    if( $_POST [ 'kopie' ]== 'on' )
    wirklich on ist also true dann will ich ja, dass eine Kopie geschikt wird.

    Ich zeigs mal auf:

    PHP:
    <?
    if (
    $_POST [ 'kopie' ]== 'on' ) {
    true  mail ( $mailaddyvomuser $text etc );
    else;
    lass es
    ?>
    }

    Geht das so? Kann ich das else + das "lass es" auch wegalssen?
     
  7. 22. August 2007
    AW: Formular Problem (mit PHP)

    Oo
    Dein Code erscheint mir kryptisch. ^^ (Im Sinne von konfus, durcheinander, komisch.. )
    PHP:
    <? php
     

     
     
    if( $_POST [ 'checkbox' ] ==  'on' ) {
       
    mail ( $v , $w , $x );
     }
    ?>
     
  8. 22. August 2007
    AW: Formular Problem (mit PHP)

    Noch ein paar Worte zum Thema Sicherheit.

    Ich würde auf alle Fälle ein Captcha einbauen, sonst kommen die bösen Spambots und missbrauchen dein Formular. Die Folge wäre noch mehr Spam als eh schon unterwegs ist.

    Generell gilt: Jede Variable die über GET[], POST[] oder REQUEST[] rein kommt muss validiert werden. Sonst könnte Hintz und Kuntz jeden Schweiss schreiben.

    Abhilfe(n):

    - Reguläre Ausdrücke
    - mysql_real_escape_string()
    - ctype_alnum (oder entsprechend ander ctypes)
    - Badwordfilter
    - Salt Werte und md5 Verschlüsselung bei Passwortübermittlungen


    Das sollten nur mal ein paar Denkanstöße sein. Man muss natürlich abschätzen in welchem Maße man Sicherheit in seinem Script haben möchte / braucht. Leider sind die autoamtisierten Digitalvergewaltiger ziemlich schlau, von daher würd ich zumindest das ein oder andere mit einbauen....
     
  9. 22. August 2007
    AW: Formular Problem (mit PHP)

    Ich kann dir nur zustimmen aber muss arg betonen, dass dies hier doch eigentlich eine "Underground Community für Warez und Technik" ist und es hier einfach nur am Verständnis für PHP und HTML - Formularen fehlt und das PHP - Tut vom Q-Net schon große Abhilfe schaffen würden.
     
  10. 22. August 2007
    AW: Formular Problem (mit PHP)

    signed!
     
  11. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.