Antworten auf deine Fragen:
Neues Thema erstellen

Formulareinträge überprüfen?

JensenJR

Noch nicht viel geschrieben

Hallo,

ich würde gerne meine Formularabfrage weiter ausbauen. Bisher fange ich den Einträge u.a. so ab, dass ich sie auf "gefährlichen Code" überprüfe (htmlentities()) und einen Vergleich der Datensätze durchführe. Sofern eine Übereinstimmung vorliegt, wird die Verbindung zum Server abgebrochen.

Darüber hinaus prüfe ich, ob bestimmte Eingabefelder ausgefüllt sind (!empty usw.). Jetzt würde ich gerne aber nur bestimmte Zeichen zulassen, z.B. sollte für das Telefonfeld nur Ganzzahlen erlaubt sein. Wie ich das mit Javascript realisieren kann, ist mir klar, jedoch ist das kein wirklicher Vergleich.

Hat jemand von Euch ein Beispiel dafür, wie es gehen könnte?

Danke für die Hilfe.
 

Darth

Noch nicht viel geschrieben

AW: Formulareinträge überprüfen?

Jetzt würde ich gerne aber nur bestimmte Zeichen zulassen, z.B. sollte für das Telefonfeld nur Ganzzahlen erlaubt sein.

zum Beispiel Formular mit method="get":

if ((string)((int)$_GET['id']) !== $_GET['id'])
die ("Fehler: keine ganze Zahlen");

mit (int)$_GET['id'] wird aus der Variablen ein Integer gemacht, denn die GET-Variablen sind in der String Form. Das wird auch als Cast-Operator bezeichnet. Da der PHP Interpreter jedoch intern aus $_GET['id'] ebenfalls ein Integer macht, muß es wieder als String gecastet werden (linker Teil des Vergleichs), damit eine Manipulation festgestellt werden kann.

Probier es einfach mal aus.
 

CIX88

Aktives Mitglied

AW: Formulareinträge überprüfen?

Ich glaube (int) macht sich schlecht bei Telefonnummern, die mit 0 anfangen ... der Wert muss dann wieder von $_GET übernommen werden.
 

lukas001

Noch nicht viel geschrieben

AW: Formulareinträge überprüfen?

Wenn du das ganze irgendwie standartisieren möchtest und für alle felder die gleiche abfrageform verwenden möchtest würde ich die Regular Expressions absolut ans Herz legen,.. damit würden sich Telefonnummern auch in der schreibweise mit Abständen bzw / dazwischen überprüfen lassen, was mit is_numeric nicht möglich ist.
 

blackout

Schaf im Wolfspelz

AW: Formulareinträge überprüfen?

Was zum Server geschickt wird, musst du grundsätzlich nur für die jeweilige Datenbank maskieren. Beim Eintrag solltest du daher nicht per htmlentities HTML (!) beschneiden, sondern z.B. im Falle von MySQL mit mysql_real_escape_chars die für die Datenbank relevanten Zeichen unterbinden. Den Teil mit htmlentities solltest du grundsätzlich erst bei der Ausgabe vornehmen.
 

k4yc33

Noch nicht viel geschrieben

AW: Formulareinträge überprüfen?

Ich schließe mich CIX88 an und sage reguläre Ausdrücke. Mit einem vernünftigen Suchmuster kann mann mehrere Fliegen mit einer Klappe schlagen z.b. zugelassene Zeichen und Anzahl d. zugelassenen Zeichen zugleich prüfen. Dann kann man sich z.B. is_numeric oder strlen das eine oder andere Mal sparen.
 
Bilder bitte hier hochladen und danach über das Bild-Icon (Direktlink vorher kopieren) platzieren.
Antworten auf deine Fragen:
Neues Thema erstellen

Willkommen auf PSD-Tutorials.de

In unseren Foren vernetzt du dich mit anderen Personen, um dich rund um die Themen Fotografie, Grafik, Gestaltung, Bildbearbeitung und 3D auszutauschen. Außerdem schalten wir für dich regelmäßig kostenlose Inhalte frei. Liebe Grüße senden dir die PSD-Gründer Stefan und Matthias Petri aus Waren an der Müritz. Hier erfährst du mehr über uns.

Stefan und Matthias Petri von PSD-Tutorials.de

Nächster neuer Gratisinhalt

03
Stunden
:
:
25
Minuten
:
:
19
Sekunden

Neueste Themen & Antworten

Flatrate für Tutorials, Assets, Vorlagen

Zurzeit aktive Besucher

Statistik des Forums

Themen
118.621
Beiträge
1.538.378
Mitglieder
67.545
Neuestes Mitglied
helenkitina
Oben