Schrift
[thread]10240[/thread]

[PHP] Tabelle dynamishc aus Array erzeugen



<< >> 4 Einträge, 1 Seite
FlorianL
 2007-08-28 12:15
#98751 #98751
User since
2007-05-18
142 Artikel
BenutzerIn
[default_avatar]
Moin zusammen :]

Ich habe 2 Pages, die eine ist die eingabemaske in der dynamisch (durch js realisiert) neue form-textfelder hinzugefügt werden. Die 2. Page soll aus den Übergebenen Werten ne Tabelle bauen.

Ich bin soweit das ich die forms in ein array speicher, nun will ich sie nacheinander speichern, mit meiner foreach-lösung geht das natürlich nicht, ich zeig euch mal den code:


Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
[...]
<table width="1000" border="1">
<tr>
<td width="756"><div align="center"><strong>Thema</strong></div></td>
<td width="45"><div align="center"><strong>Aktion</strong></div></td>
<td width="82"><div align="center"><strong>Bearbeitung</strong></div></td>
<td width="89"><div align="center"><strong>Termin</strong></div></td>
</tr>
<tr>
<td>Fr&uuml;h/Sp&auml;tdienst kommende Woche</td>
<td><div align="center">A</div></td>
<td><div align="center">Alle</div></td>
<td><div align="center">Heute</div></td>
</tr>
<tr>
EOT;
foreach ($_POST['thema'] as $k) {
print "<td>$k</td>";
}
foreach ($_POST['aktion'] as $a) {
print "<td>$a</td>";
}
foreach ($_POST['bearbeitung'] as $b) {
print "<td>$b</td>";
}
foreach ($_POST['termin'] as $t) {
print "<td>$t</td></tr>";
}

echo "</table>";


wie kann ich es realisieren das jedes array element nur einmal in die tabelle geschrieben wird, und zwar so:

Code: (dl )
1
2
3
4
5
6
-------------------------------------------------------
|thema1 | aktion1 | bearbeitung1 | termin1 |
-------------------------------------------------------
|thema2 | aktion2 | bearbeitung2 | termin2 |
-------------------------------------------------------
usw.


bei meinem code schreibt er irgendwie alles immer wieder in die zeilen, klar bei foreach.. aber hat jemand nen rat dazu?
nepos
 2007-08-28 13:21
#98758 #98758
User since
2005-08-17
1420 Artikel
BenutzerIn
[Homepage] [default_avatar]
Mach eine for-Schleife, die die Anzahl der Einträge in $_POST['thema'] durchläuft. Der Schleifenzähler ist der Index für die Zugriffe auf die Arrays.
Du verarbeitest im Moment jeden Array extra, was falsch ist.
FlorianL
 2007-08-28 13:29
#98759 #98759
User since
2007-05-18
142 Artikel
BenutzerIn
[default_avatar]
ich habs gerad versucht so zu lösen, aber ich bekomme nen fehler...

code:
Code: (dl )
1
2
3
4
5
6
7
foreach ($_POST['thema'] as $key -> $thema) {
printf("<tr><td>%s</td><td>%s</td><td>%s</td><td>%s</td></tr>",
$thema,
$_POST['aktion'][$key],
$_POST['bearbeitung'][$key],
$_POST['termin'][$key]);
}


Error:
Code: (dl )
Fatal error: Cannot access empty property in /usr/local/apache2/htdocs/post.php on line 74
FlorianL
 2007-08-28 13:41
#98760 #98760
User since
2007-05-18
142 Artikel
BenutzerIn
[default_avatar]
hat sich erledigt, ich hatte -> statt =>

naja... so is das nunma ^^

danke trotzdem! :)
<< >> 4 Einträge, 1 Seite



View all threads created 2007-08-28 12:15.