• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

PHP mail()

sveka

Mitglied
Hallo,

ich habe ein Formular erstellt und versende dieses auch mit der mail() Funktion von PHP. Klappt auch alles wunderbar.

Jetzt habe ich nur noch eine Frage.

Ich verwende dort sehr sehr viele Variablen und würde gerne überprüfen ob in dem Formular in jedem Feld etwas eingetragen ist.

Wie ist dies einfach möglich??

Ich bitte um Hinweise. Danke. :) Ich danke Euch.
 
Werbung:
Werbung:
Klar. :) Mir ging es nur darum zu prüfen, ob überhaupt was eingetragen ist. Nicht was eingetragen ist.

PHP:
/* Überprüfung Anfang */
<?
 if ($vk == true)
 if ($pass == true)
 if ($spielernr_1 == true)
 if ($abloesesumme == true)
{

}

else {}
?>

/* Überprüfung Ende */
 
Das, was du da tust, lässt sich in einem IF per UND-Verknüpfung abwickeln.

PHP:
<?php
if ($vk == true && $pass == true && $spielernr_1 == true && $abloesesumme == true){

} else {

}
?>

Außerdem kannst du auch beim Empfangen prüfen, ob alle Felder ausgefüllt sind, einfach eine Foreach-Schleife über $_GET oder $_POST ;)
 
Danke für den Tipp. :)

Mit welcher Möglichkeit kann ich prüfen ob in den ausgefüllten Feldern Zahlen in einem bestimmten Spektrum z.B. 0 - 200 verwendet wurden?
 
Werbung:
Werbung:
halte ich für wenig sinnvoll! du solltest vor dem absenden prüfen ob alles befüllt ist da du sonst jedes fehlerhaft ausgefüllte formular ueber den erdball schickst und das unnötigen traffic erzeugt.
die prüfung vorher verhindert dieses halt.

mfg

Vorher heißt, im Formular selbst? Also mit PHP-Self??
 
Werbung:
Wenn sie aus einem Formular kommen, benutzt du register_globals. Register_globals zu benutzen, ist für ein PHP-Script genauso gefährlich, wie wenn du mit Kopfhörern und Sack auf dem Kopf eine Autobahn überquerst.

Um zu überprüfen, ob Formularelemente abgeschickt wurden, musst du $_POST (oder $_GET, falls die Methode GET ist) untersuchen.

Für ein Feld namens "email" so:
PHP:
if (isset($_POST['email']) {
}

Für mehrere Felder so:
PHP:
if (isset($_POST['feld1'], $_POST['feld2']) {
}

Innerhalb dieser Bedingung kannst du dann Folgendes schreiben:
PHP:
if (isset($_POST['feld1'], $_POST['feld2']) {
    $feld1 = $_POST['feld1'];
    $f2 = $_POST['feld2'];
}


Im Übrigen rate ich von der mail()-Funktion ab:
http://www.php.de/adventskalender-2...postel-und-die-freuden-des-briefverkehrs.html


noxTos Ratschlag ist für Applikationen von Belangen, bei denen Millionen von Requests am Tag gemacht werden, die hätten vermieden werden können. In deinem Fall ist der Tipp vollkommener Hüttenkäse.
 
halte ich für wenig sinnvoll! du solltest vor dem absenden prüfen ob alles befüllt ist da du sonst jedes fehlerhaft ausgefüllte formular ueber den erdball schickst und das unnötigen traffic erzeugt.
die prüfung vorher verhindert dieses halt.

mfg

Was hat clientseitige Prüfung bitte mit serverseitiger Prüfung zu tun?! Was du für wenig sinnvoll erachtest, ist nunmal die serverseitige Prüfung, welche nicht umgangen werden kann, die clientseitige Prüfung ist dagegen ganz schnell umgangen. Ich weiß nicht, wie du deine Software aufbaust, aber wenn du dich nur auf die clientseitige Prüfung verlässt, kann man nicht viel davon halten.

So, und bevor du jetzt meckerst, ich hab gerade genau das gleiche getan, wie du zuvor. Wie du mir, so ich dir ;)
Ich wollte ihm lediglich zeigen, wie er alle übermittelten Felder auf einen Wert prüfen kann, ohne jedes Feld einzeln in eine Variable zu speichern.
 
also erst mal sry timmer ich wollte dich nicht dissen brauchst dich nicht angegriffen fühlen. ich habe den beitrag recht unaufmerksam gelesen und deinen post falsch verstanden heute morgen.
ich bau meine software garniucht da ich lerne, und genau das hier zum lernprozess gehört. durch diesen fehler habe ich wieder etwas dazu gelernt danke sehr dafür das.

natürlich hast du recht ich habe da nen kleine grossen denkfehler drin. ich prüfe natürlich serverseitig und schicke dann die mail ab! du hast vollkommen recht und meine aussage war absolut falsch.

es tut mir leid wenn du dich durch meinen post angegriffen fühlst.
danke das du mich darauf aufmerksam machst.


ich baue meine software garnicht da ich lerne und mir dieser fehler deswegen unterlaufen ist. ich werde den beitrag sofort entfernen

sry nochmal timmer, und sry sveka für die fehlinfo.

mfg
 
Werbung:
Kein Grund, einen ewig langen Entschuldigungspost zu schreiben. Außerdem hab ich mich nicht angegriffen gefühlt und hoffe auch, dass du meinen Post nicht ganz so böse aufgenommen hast, wie es gerade den anschein hat ^^ Weltuntergang sieht anders aus, hab auch schon viel Mist hier gepostet ;D

So und nun bäck 2 Topic, please ^^
 
Zurück
Oben