Hallo
Mein problem ist nun, dass ich nur die Formularfelder per mail geschickt bekomme, die auch ausgefüllt sind. gibts eine möglichkeit das zu ändern und ich immer (ob nun ausgefüllt oder nicht) alle Felder per Mail zugeschickt bekomme?
Aus einem Formular werden _immer_ nur die in irgendeiner Weise ausgefüllten Felder übergeben. Das im action-Attribut definierte Programm (Skript oder Emailprogramm) bekommt also auch nur diese Felder zur Weiterverarbeitung.
Es weiß also nichts über die im Formular vorhandenen Felder, es kennt nur die übermittelten Daten.
-------> Text der E-Mail aus den Formulardaten ermitteln:
$mailtext = "";
foreach(@names) {
$name = $_;
@values = "";
@values = $query->param($name);
if($name ne "return" && $name ne "subject" && $name ne "delimiter") {
foreach $value (@values) {
$mailtext = $mailtext.$name;
$mailtext = $mailtext.$delimiter;
$mailtext = $mailtext.$value."\n";
}
}
}
In diesem Block werden die übermittelten Daten ausgelesen und in den Body der Email (Variable $mailtext) übertragen.
Wenn du dieses Skript _nur_ für das eine Formular benutzt, kannst du die variable $mailtext auch händisch füllen. _Du_ weißt ja, im gegensatz zum Skript, welche Felder im Formular vorhanden sind. So kannst du für jedes Feld prüfen, ob ein Wert übergeben wurde, und dies dann in der Variable $mailtext eintragen. bei leeren Feldern könntest du diese mit einer Zeichenkette, wie z.B. '---' oder 'k.A.' (für 'keine Angabe') markieren.
Das hat aber, abgesehen von deiner Unkenntnis der Programmiersprache und dem daraus resultierenden Unvermögen dies umzusetzen, einen _riesengroßen_ Nachteil.
Das Skript ist dann nur noch für dieses eine Formular zu gebrauchen. Falls du in deiner Seite ein weiteres Formular einbaust, dessen Eingaben ebenfalls per Email übermittelt werden sollen, brauchst du ein weiteres Skript.
So, wie das Skript jetzt ist, kann es die Daten jedes Formulars versenden. Aber eben nur mit den Daten aus den wirklich ausgefüllten Feldern.
Tschö, Auge
Die Musik drückt aus, was nicht gesagt werden kann und worüber es unmöglich ist zu schweigen.
(Victor Hugo)
Veranstaltungsdatenbank Vdb 0.1