CreativPur
Erfahrenes Mitglied
Hi,
ich habe eine Tabelle mit verschiedenen Einträgen..
Diese möchte ich gern ändern, bzw. auch löschen können..
Das löschen der einzelnen Zeilen funktioniert bereits..
Wenn ich aber etwas ändern möchte, wird nur der letzte Datensatz berücksichtigt..
Wo liegt da der Fehler ?
ps: zum Schluss schließe ich alles..
ich habe eine Tabelle mit verschiedenen Einträgen..
HTML:
<form name='form' id="form_aendern" method='post' action='#'>
<h1>Unsere Events ändern oder löschen</h1>
<table class="table table-hover" width="100%" border="0" style="text-align:left;">
<thead>
<tr style="color:blue;">
<th width="10">ID</th>
<th>Datum:</th>
<th>Bild-Datei:</th>
<th>Label:</th>
<th>Text:</th>
<th>Link:</th>
<th align="right" style="text-align:right;">
<a href="javascript:void(0)" onclick="top.window.location.reload(true)" target="_self">
<button type="submit" name="del_items" class="btn btn-default btn-xs">
<span class="glyphicon glyphicon-trash" style="padding:3px 3px 3px 3px; color:red;"></span>
</button>
</a>
</th>
<th align="right" style="text-align:right;">Update</th>
</tr>
</thead> <? foreach($userdata as $key => $datas) : ?>
<tbody>
<td width="10" style="padding:10px"><strong><input name="id" type="text" value="<?=$datas["id"]?>" /></strong></td>
<td style="padding:10px"><input name="datum" type="text" value="<?=$datas["datum"]?>" /></td>
<td style="padding:10px"><input name="bild" type="text" value="<?=$datas["bild"]?>" /></td>
<td style="padding:10px"><input name="label" type="text" value="<?=$datas["label"]?>" /></td>
<td style="padding:10px"><textarea name="text" type="text"><?=$datas["text"]?></textarea></td>
<td style="padding:10px"><input name="links" type="text" value="<?=$datas["links"]?>" /></td>
<td align="center"><input style="margin-top:1px;" type="checkbox" name="items[<?=$key?>]" value="<?=$key?>" /></td>
<td align="right"><button type='submit' id='aendern' name='aendern' class="btn btn-default btn-xs"><span class="glyphicon glyphicon-refresh" style="color:green;"></span></button> </td>
</tbody><? endforeach ?>
</table>
</form>
Diese möchte ich gern ändern, bzw. auch löschen können..
Das löschen der einzelnen Zeilen funktioniert bereits..
PHP:
<?php
if(isset($_POST["del_items"]) and count($_POST["items"])) {
$del_keys = implode(",",$_POST["items"]);
$sql = "DELETE FROM Events WHERE id IN (".$del_keys.")";
$res = mysql_query($sql,$conn);
}
$update = "UPDATE Events SET datum = '{$_POST['datum']}', bild = '{$_POST['bild']}', label = '{$_POST['label']}', text = '{$_POST['text']}', links = '{$_POST['links']}' WHERE '{$_POST['id']}'";
echo $update."<br>";
$updaten = mysql_query($update) or die(mysql_error());
$result=$sql = "select date_format( datum, '%d.%m.%Y' ) AS datum, id, bild, label, text, links FROM Events";
$res = mysql_query($sql,$conn);
if (mysql_num_rows($res)) {
while ($row = mysql_fetch_assoc($res)) {
$userdata[$row["id"]] = array("id" => $row["id"], "datum" => $row["datum"], "bild" => $row["bild"], "label" => $row["label"], "text" => $row["text"], "links" => $row["links"]);
}
}
$data=mysql_fetch_assoc($result);
?>
Wenn ich aber etwas ändern möchte, wird nur der letzte Datensatz berücksichtigt..
Wo liegt da der Fehler ?
ps: zum Schluss schließe ich alles..
PHP:
<?php
$db->Close();
?>