Willkommen in der Webstatt Zum Webstatt Blog und Stories
gecko am 30.03.06 12:54

hallo

via einer schleife generiere ich mehrere textfelder mit infos aus der DB.
<?
$result = mysql_query("SELECT id,reiter_link from module ORDER BY id");
?>
<form name="form1" method="post" action="index.php?site=cms_save_module">
<table width="100%" border="0" cellspacing="0" cellpadding="5">
<tr>
<td>URL</td>
</tr>
<?
while($row = mysql_fetch_row($result))
{
?>
<tr>
<td>
<input name="reiter_link[]" type="text" size="50" value="<? echo $row[1]; ?>">
</td>
</tr>
<?
}
?>
<tr>
<td><input type="submit" name="Submit" value="Senden">
</td>
</tr>
</table>
</form>
ich möchte nun alle auf einmal wieder speichern können.

ich dachte das geht irgendie mir "foreach" oder so aber ich kriegs nicht hin... ?(
könnte mir ev. jemand einen rat geben, wie das funktioniert?

netcup.de Warum gibt es hier Werbung?
Michael Michael am 30.03.06 13:09

Hey,

also zuerst würde ich die Textfelder ein wenig anders benennen:

$i = 1;
while($row = mysql_fetch_row($result))
{
print '<tr><td><input name="reiter_link_'.$i.'" type="text" size="50" value="'.$row[1].'"></td></tr>';
}


Für das Speichern würde ich zu einer while Schleife greifen
$stop = false;
$i = 1;
while(!$stop) {
$name = "reiter_link_$i";
if(array_key_exists($name,$_POST)) {
$wert = $_POST[$name];
// speichern
++$i;
} else {
$stop= true;
}
}


Viele Grüße,
Michael

milahu milahu am 30.03.06 16:07

einfacher, schöner, besser:
<input name="foo[]" />
<input name="foo[]" />
<input name="foo[]" />
<input name="foo[]" />


<?php
foreach ($_GET['foo'] as $foo)
print ($foo);
?>

Michael Michael am 30.03.06 17:43

Cool, ich kannte die Schreibweise bisher nur bei Checkboxen...

Das ist natürlich besser

gecko am 31.03.06 04:41

vielen dank für support!

...wie muss ich mit diesem beispiel die update-query schreiben?

"update module set reiter_link =?"

$foo funktioniert bei mir nicht. wird alles nur gelöscht....

milahu milahu am 31.03.06 15:19

Wer oder was ist $foo ?

Creative Commons Lizenzvertrag
Alle Inhalte des Webstatt-Archivs stehen unter einer Creative Commons Namensnennung - Weitergabe unter gleichen Bedingungen 3.0 Unported Lizenz.

Impressum & Kontakt