Hi,
Ich habe eine Delete-Anweisung, in der ich einen Datensatz anhand der ID löschen kann. Soweit funktioniert es auch. Jetzt möchte ich aber, dass die id's die nach dem Elemt stehen um eins nach oben gezählt werden.
Auto_increment funzt nicht, da es nicht die gesamtzahl+1 nimmt, sondern die jemals erstellten Datensätze!
Hier ist der Code:
$id wird übergeben.
sobald ich es ausführe wird entweder der letzte gelöscht (funktioniert), oder der mit der entsprechenden ID und alle IDs die höher sind um -1 geuppt(funktioniert nicht). Es wird weder eine Fehlermeldung ausgegeben noch einer der Datensätze geupdated.
Vielen Dank im vorraus für eure Hilfe
bAbbA Zwack
Ich habe eine Delete-Anweisung, in der ich einen Datensatz anhand der ID löschen kann. Soweit funktioniert es auch. Jetzt möchte ich aber, dass die id's die nach dem Elemt stehen um eins nach oben gezählt werden.
Auto_increment funzt nicht, da es nicht die gesamtzahl+1 nimmt, sondern die jemals erstellten Datensätze!
Hier ist der Code:
$id wird übergeben.
PHP-Code:
<?php
include ('header.php');
$sql = "SELECT * From filme";
$sql_eintrag = mysql_query($sql, $verbindung);
$anzahl = mysql_num_rows($sql_eintrag);
if ($id == $anzahl)
{
$sql_loeschen = "DELETE From filme WHERE id = '".$id."'";
$eintrag_loeschen = mysql_query($sql_loeschen, $verbindung);
}
else
{
$sql_loeschen = "DELETE From filme WHERE id = '".$id."'";
$eintrag_loeschen = mysql_query($sql_loeschen, $verbindung);
while($id < $anzahl)
{
$update_eintrag = "update filme set id = '". $id-1 ."' where id = '".$id."'";
$update = mysql_query($update_eintrag, $verbindung) or die(mysql_error());
$id=$id+1;
}
}
echo "<center><b>Der Film wurde erfolgreich gelöscht!<br><br><br>
<a href=\"index.php\">Hier geht's weiter!!!</a><br><br><br><br></b>";
include ('footer.php');
?>
Vielen Dank im vorraus für eure Hilfe
bAbbA Zwack
Kommentar