while: $_POST ?

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Antworten
Benutzeravatar
leopittoni
Mitglied
Beiträge: 1162
Registriert: 26.04.2004 20:17

while: $_POST ?

Beitrag von leopittoni »

Hallo wieder einmal...

Ich gebe ein Formular dynamisch aus, pro DB-Feld gibts ein Formularfeld.
Jedes Formularfeld heisst name="name1", name="name2" usw.

In der Datei, an welche die Daten gesendet werden, wenn das Formular gesendet wird ($_POST), sollen nun alle Einträge die Einträge der DB aktualisieren.

Deshalb muss ich das irgendwie in eine while schleife packen, da ich ja nicht genau weiss, wie viele Formular-Felder es sind...

Nur: Wie kann ich eine Aktion durchlaufen lassen (while-schlaufe), bis es keine Formular-Felder (name="name1",...) mehr hat?

Danke! Léo
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Du solltest auf keinen Fall Daten die per GET/POST kommen ungeprüft an die DB weiterleiten.
KB:knigge
Benutzeravatar
leopittoni
Mitglied
Beiträge: 1162
Registriert: 26.04.2004 20:17

Beitrag von leopittoni »

Ok, aber die Daten kann ich ja auch dann überprüfen, und wenns ok ist, in die DB. Sonst eine Fehlermeldung.

Nur wie kann ich, alle Formular-Zeilen durch eine while-schleife lassen, bis es keine mehr hat? Wie gesagt: die felder des formulars sind von 1-... angeschrieben.

Danke! Léo
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Wenn sie durchnummeriert sind, könnest Du es bspw. so machen:

Code: Alles auswählen

for ($i=0; $i<count($_POST); $i++)
{
	print $_POST[$i+1];
}
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Benutzeravatar
leopittoni
Mitglied
Beiträge: 1162
Registriert: 26.04.2004 20:17

Beitrag von leopittoni »

Und wo wird da der Feldname angegeben?

es werden ja verschiedene (andere) Daten noch über $_Post übergeben.

soll es dann einfach:

Code: Alles auswählen

for ($i=0; $i<count($_POST['feld']); $i++) 
{ 
   print $_POST[$i+1]; 
}
sein?

Und was, wenn mein "name" von einem feld "name1", "name2", usw. ist?

Danke! Léo
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Beitrag von Miriam »

Hattest Du nicht eben geschrieben, dass sie mit 1 beginnend nummeriert sind.....?

Du kannst es auch so machen:

Code: Alles auswählen

while (list($key, $val) = each($_POST))
	print($_POST[$key]);
Oder oder oder.......
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Antworten

Zurück zu „Coding & Technik“