Probelem mit Modul für Formularcheck

Gesperrt
farina
Beiträge: 259
Registriert: Fr 24. Okt 2003, 13:16
Wohnort: Düren
Kontaktdaten:

Probelem mit Modul für Formularcheck

Beitrag von farina »

Ich habe ein kleines, einfaches Modul zum Versenden von Formularen geschrieben.

Code: Alles auswählen

<?php 
	
$datum=date("d.m.Y - H:i:s",time());
 $inhalt="\n\n\n     $Vorname $Name schrieb am $datum:\n\n     Mitteilung:\n     $Anmerkungen\n\n     Persönliche Angaben:\n     Name: $Vorname $Name\n     Strasse:$Str\n     Ort: $PLZ $Ort\n     Telefon: $Tel\n     Emailadresse: $Email\n\n";
 
 // Nachricht an Domaininhaber
$an="xyz@domain.de"; /* hier die eigene Mailadresse angeben */
$betreff="Kontakt Website ";
$header='From:'.$Name.'<'.$Email.'>\n';
mail($an,$betreff,$inhalt,$header);
echo "Wir werden uns bald bei Ihnen melden.";
 ?>
Das funktioniert.
Nun möchte ich noch vor dem Versenden abfragen, ob bestimmte Felder leer sind.

Code: Alles auswählen

<?php 
if (($_POST["Name"] == NULL) || ($_POST["Vorname"] == NULL)|| ($_POST["Strasse"] == NULL) || ($_POST["Ort"] == NULL) || ($_POST["Anmerkungen"] == NULL))
{   echo "Mail konnte nicht versandt werden.<br>Bitte nehmen Sie auf anderem Wege Kontakt  mit uns auf. ";
}
else  {		
$datum=date("d.m.Y - H:i:s",time());
 $inhalt="\n\n\n     $Vorname $Name schrieb am $datum:\n\n     Mitteilung:\n     $Anmerkungen\n\n     Persönliche Angaben:\n     Name: $Vorname $Name\n     Strasse:$Str\n     Ort: $PLZ $Ort\n     Telefon: $Tel\n     Emailadresse: $Email\n\n";
 
 // Nachricht an Domaininhaber
$an="xyz@domain.de"; /* hier die eigene Mailadresse angeben */
$betreff="Kontakt Website";
$header='From:'.$Name.'<'.$Email.'>\n';
mail($an,$betreff,$inhalt,$header);
echo "Wir werden uns bald bei Ihnen melden.";
}
 ?>
Das klappt leider nicht. Obwohl die Variablen vorhanden sind, wird keine Mail verschickt.
Hat jemand eine Ahnung, was daran falsch ist.

Gruß farina
Oldperl
Beiträge: 4316
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Hat sich bedankt: 6 Mal
Danksagung erhalten: 4 Mal
Kontaktdaten:

Beitrag von Oldperl »

Versuch es mal anstelle der NULL in der Abfrage mit "".
Die Variablen werden als Leerstring übergeben, wenn nichts drin steht, und somit mußt du auch auf einen Leerstring abfragen.

Gruß aus Franken

Ortwin
ConLite 3.0.0-dev, alternatives und stabiles Update von Contenido 4.8.x unter PHP 8.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
farina
Beiträge: 259
Registriert: Fr 24. Okt 2003, 13:16
Wohnort: Düren
Kontaktdaten:

Beitrag von farina »

Danke für die schnelle Hilfe.
Leider klappt es aber auch nicht.
Ist denn ein andere Fehler im Script? Ich finde nichts.

Gruß farina
Oldperl
Beiträge: 4316
Registriert: Do 30. Jun 2005, 22:56
Wohnort: Eltmann, Unterfranken, Bayern
Hat sich bedankt: 6 Mal
Danksagung erhalten: 4 Mal
Kontaktdaten:

Beitrag von Oldperl »

Kannst du mal bitte das ganze Modul posten, da fehlt sicherlich auch noch ein Formular.
So aus dem Zusammenhang gerissen ist es nicht einfach das ganze nachzuvollziehen.
Wer ruft wen auf?
Ist das Modul und das Formular im selben Artikel?

Eine Möglichkeit die mir grad so einfällt wäre auch das bei dir die einfache Übergabe der Variablen abgeschaltet ist und du sie nur über das $_POST array auslesen kannst. Du fragst aber nur in der if-Abfrage dieses array ab, beim Zusammensetzen deines mail-Befehls greifst du wieder auf den Variablennamen zu (geht nicht in jeder PHP-Konfiguration).

Da kommt es dann auf die PHP-Variable $register_globals an. Dann am besten die Variablen am Anfang des Scripts aus der $_POST auslesen (sollte man eh immer so machen, auch aus Sicherheitsgründen).

Code: Alles auswählen

$Name = $_POST['Name'];
...
Auf Groß- und Kleinschreibung achten.

Soweit was mir grad so einfällt, aber wie gesagt, einfacher ich könnte das kompl. Modul mal testen.

Gruß aus Franken

Ortwin
ConLite 3.0.0-dev, alternatives und stabiles Update von Contenido 4.8.x unter PHP 8.x - Download und Repo auf Gitport.de
phpBO Search Advanced - das Suchwort-Plugin für CONTENIDO 4.9
Mein Entwickler-Blog
Gesperrt