Falsche Position in DB
Timo
- php
Hallo zusammen ich habe folgendes Problem.
Auf meinem Screen werden daten aus der Datenbank ausgegeben.
BSP
Test1 Löschen
Test2 Löschen
Test2 Löschen
Diese Einträge werden in meiner DB volgendermaßen abgelegt
ID PosIDs content_d
60 1 Test1
62 2 Test2
63 3 Test3
PosIDs gibt in dem Fall die jeweilige Position an an der mein Eintrag steht. Lösche ich nun über meinen Screen den Eintrag Test2, müssen meine PosIDs neu vergeben werden:
ID PosIDs content_d
60 1 Test1
63 2 Test3
Leider sieht es bei mir folgendermaßen aus:
ID PosIDs content_d
60 0 Test1
63 2 Test3
Hier mal mein Code vill könnt ihr mir ja weiterhelfen.
// Speichert einen neuen Eintrag in der Datenabank ab - DYNAMIC
$action_d = $_POST["action-d"];
if ($action_d == "save") {
$content_D = $_POST['projektname'];
$sql = "SELECT * FROM dynamic ORDER BY PosIDs DESC LIMIT 0,1";
$highestEntry = mysql_fetch_array( mysql_query($sql) );
$highestPosID = $highestEntry['PosIDs']+1;
mysql_query("insert into $table_D (ProID, content_D, PosIDs) VALUES ('$project_id', '$content_D', '$highestPosID')") or die(mysql_error());
}
//Aufruf zum löschen der Datensätze für DYNAMIC
if(isset($_GET['action']) && $_GET['action'] == 'delete' && isset($_GET['id']) && is_numeric($_GET['id'])) {
$sql = "SELECT * FROM dynamic WHERE id = '".intval($_GET['id'])."'";
$oldentry = mysql_fetch_array( mysql_query($sql) );
$oldPosID = $oldentry1['PosIDs'];
$sql = "DELETE FROM dynamic WHERE id = ".intval($_GET['id'])." LIMIT 1";
if(mysql_query($sql) OR die(mysql_error())) {
}
$updatePos = @mysql_query("UPDATE dynamic SET PosIDs = PosIDs - 1 WHERE PosIDs > '".$oldPosID."'")or die(mysql_error());
}
Ich danke euch im Vorraus.
Timo
hallo,
Hallo zusammen ich habe folgendes Problem.
ID PosIDs content_d
60 1 Test1
63 2 Test3
wieso brauchst du das denn ?
dich nicht als zum sortieren , oder ?
Ist schon okej ich meinen Fehler gefunden.
Gruss
Timo
hallo,
hätte schon gerne gewusst welchen sinn das gmacht hat , die reihen numerierung zu aktualiesieren.
das sah unnötig aufwändig aus.
aber naja