rob: php Kontaktformular für mehrere Empfänger

Beitrag lesen

Hi!

Code, und die Fehlermeldung.

Es kommt also keine PHP-Fehlermeldung?
Nur deine Ausgabe?

Wenn ich es abschicke, kommt dass ich keinen Namen eingegeben habe, oder keine dresse, vielleicht auch keinen Text, oder ich habe keine Auswahl getroffen.
OBWOHL überall was drinnesteht....

Wirklich sicher, daß "überall was drinnesteht"?
Was ist denn in $HTTP_POST_VARS enthalten?
Das solltest du dir mal mit print_r() oder var_dump() anschauen.
Ich könnte mir gut vorstellen, daß es $HTTP_POST_VARS gar nicht gibt.
Das ist abhängig von der Serverkonfiguration.
In jedem Fall ist $HTTP_POST_VARS aber veraltet und wird nur noch auf einigen Servern aus Gründen der Rückwärtskompatibilität unterstützt.
In nächster PHP-Version wird es nicht mehr enthalten sein.
Nutze $_POST stattdessen.

Ich frage mich außerdem, warum du nicht selbst in der Lage bist, deinen Fehler zu finden.
Das kann doch nicht so schwer sein.
Wenn das nicht funktioniert, dann mußt du eben schauen, bis wohin dein Script noch korrekt abgearbeitet wird.
Und wenn die Bedingung einer if-Abfrage unerwarteter Weise erfüllt wird, dann mußt du halt rausfinden, warum das so ist.
Dazu läßt du dir einfach den Inhalt deiner Variablen ausgeben.

// Überprüfung ob etwas eingetragen wurde

if ($name !="" && $text !="")

Schau dir doch mal die Fuktionen [isset()](http://www.php.net/manual/de/function.isset.php) und [empty()](http://www.php.net/manual/de/function.empty.php) an.  
  

> `$name = $HTTP_POST_VARS["Name"];`{:.language-php}  

Warum das?  
Wozu den Wert einer Variablen in einer anderen speichern, anstatt diese Variable direkt einzusetzen?  
Das ist doch nur Speicherverschwendung.  
  
  

> `if ($absemail!="" && ereg("^([a-zA-Z0-9.\_-]+)@([a-zA-Z0-9.-]+.[A-Za-z][A-Za-z][A-Za-z]+)$", $absemail))`{:.language-php}  

Du solltest nicht mit den POSIX-Funktionen arbeiten, sondern die PCRE-Funktionen einsetzen. Diese arbeiten bei weitem schneller.  
Nutze [preg_match()](http://www.php.net/manual/de/function.preg-match.php) statt ereg().  
  

> Und ich brauch eben noch ne Abfrage, dass wenn ich den Vorstand erreichen will, auch die entsprechende E-Mail Adresse gewählt wird, und wenn ich den Webmaster erreichen will, soll auch da die Richtige Adresse hergenommen werden  

Was ist daran denn so schwer? Wo hängst du?  
Da brauchst du doch nur eine einfache if-Abfrage, welches Feld deiner Select-Box ausgewählt wurde.  
  
  
Schöner Gruß,  
rob