phpbar.de logo

Mailinglisten-Archive

[php] Reihenweise Variablen abfragen.

[php] Reihenweise Variablen abfragen.

Alexander Skwar php_(at)_phpcenter.de
Wed, 22 Aug 2001 15:53:48 +0200


So sprach =BBStefan Br=FCckmann=AB am 2001-08-22 um 08:07:03 +0200 :
> Dann m=FC=DFte ich schreiben=20
> <input type=3D"text" name=3D"var[1]">
> <input type=3D"text" name=3D"var[2]">
> ...
> <input type=3D"text" name=3D"var[63]">

Jein - mit var[], var[], var[] weist PHP dann nacheinander dem Array var
die Werte zu.  Wenn Du aber sichergehen m=F6chtest, das die 1. Zeile auch
den Index 1 bekommt, dann bist Du mit var[1]... besser dran, ja.

> und oben in meiner Datei mu=DF dann noch ein mehrdemensionales Array
> schreiben. In der zweiten Dimension stehen dann die einzelnen
> auszudruckenden Texte f=FCr var[]>=3D 1.

K=F6nnte man so machen, ja, aber s.u..

>=20
> Wenn ich das jetzt richtig verstanden ist dann eine v=F6llig andere
> Konzeption n=F6tig, h=F6rt sich aber gut an.
>=20
> > In PHP bekommst Du dann z.B. so heraus, was der User eingegeben hat:
> >=20
> > foreach ($var as $item){
> >         echo $item;
> > }
> Das habe ich noch nicht ganz verstanden.
> Was steht den in $item. Oder l=F6st du das hier so, was ich mit der
> zweiten Dimension machen wollte?

=D6hm, wei=DF nicht was Du mit der 2. Dimension machen wolltest...=20

Angenommen:
<input type=3Dtext name=3D"var[]">
<input type=3Dtext name=3D"var[]">

Also 2 Text Zeilen.  In Zeile 1 tr=E4gt User ein: "foo" und in der 2.
Zeile "bar", dann ergibt $item zuerst "foo" und dann "bar".  Du hast
also 2 Durchl=E4ufe durch die foreach() Schleife.

> Und woher wei=DF php wann es $item drucken soll und wann nicht?

Wenn Du den Befehl "echo" nimmst, dann druckt PHP was, sonst nicht
(sofern Du in einem <?php .... ?> Block bist, nat=FCrlich).

Noch ein anderer Ansatz.  Angenommen Du hast ein Formular bei dem der
User angegeben kann, was f=FCr eine Art Hotel + Service er w=FCnscht.
Angenommen er kann ausw=E4hlen zwischen "4 Sterne", "Klimaanlage auf
Zimmer", "Doppelbett" und kann noch sonstige W=FCnsche angeben.  Um wieder
ein Array zu nehmen, w=FCrde ich evtl. machen:

<input type=3Dcheckbox name=3D"art[4 Sterne]">
<input type=3Dcheckbox name=3D"art[Klimaanlage auf Zimmer]">
<input type=3Dcheckbox name=3D"art[Doppelbett]">
<input type=3Dtext name=3D"art[W=FCnsche]">

In PHP dann:

foreach ($art as $servicetyp =3D> $angabe){
  echo "Bei Servicetyp " . $servicetyp;
  echo "sagte Kunde: " . $angabe;
}

Was Du also als Arraykey nimmst, ist vollkommen belanglos.  Sinnvoll
w=E4re hier wohl eher eine Datenbank ID, aber auch Texte mit
Leerzeichen/Umlauten gehen.

Wenn Du eine DB ID nimmst, also Ziffern, dann mu=DFt Du *NICHT* darauf
achten, das die Ziffern fortlaufend sind.  In PHP d=FCrfen die Array
Indices auch "L=F6cher" haben, also es darf sein, das es arr[1] und
arr[42] gibt, aber nichts dazwischen.

Klarer?

Alexander Skwar
--=20
How to quote:	http://learn.to/quote (german) http://quote.6x.to (english)
Homepage:	http://www.digitalprojects.com   |   http://www.iso-top.de
   iso-top.de - Die g=FCnstige Art an Linux Distributionen zu kommen
		Uptime: 8 hours 22 minutes


php::bar PHP Wiki   -   Listenarchive