Funktion zum dynamischen ändern von mehreren Datensätzen

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Funktion zum dynamischen ändern von mehreren Datensätzen

    Hallo zusammen,

    ich bin dabei ein kleines AdminTool für mich selbst zu schreiben. Ich bin kein Profi-Entwickler aber ich schreibe dieses AdminTool um mehr zu lernen. Zu diesem Tool gehört ua. auch eine Bildergalerie. Diese funktioniert eigentlich einwandfrei. Nun möchte ich jedoch die Bilder für die Ausgabe auch positionieren können.

    Bisher bin ich soweit. Ich habe ein Eingabeformular, in dem ich das Bild hochladen, einen Titel und einen Kommentar zum Bild hinzufügen, sowie festlegen kann ob das Bild auf der Website angezeigt wird, erstellt.

    Nun habe noch ich ein Input-Feld erzeugt in dem ich die Position des Bildes angeben kann. (z.B 1 oder 2,3 usw.) Beim Aufrufen des Formulars wird mit mysql_num_rows die Anzahl der Tabellenzeilen ermittelt. Diesen Wert erhöhe ich um 1 und der wird dann im Input-Feld als Vorgabewert ausgegeben.

    Wenn ich nun 10 Bilder in der Datenbank habe und ein neues Bild an die Position 5 setzen will, kann ich den Vorgabewert 11 durch 5 ersetzen und das Formular absenden. Und hier beginnt mein Problem.

    Nun gibt es natürlich 2x die Position 5 in der Spalte position der Datenbank. Wie erreiche ich das die alte Position, mit dem Wert 5 den Wert 6, und sich auch die nachfolgenden Werte um 1 erhöhen.

    Natürlich müsste, wenn ich nun zB. das Bild an der Position 4 lösche, die nachfolgenden Positionen wieder angepasst werden.

    Ich hab dabei an zwei Funktionen gedacht, aber leider hab da noch keinen vernüftigen Ansatz gefunden.

    Weiss jemand von Euch wie ich das bewerkstelligen kann. Bin um jeden Input dankbar.

    Gruss marsian
    Zuletzt geändert von marsian; 15.06.2005, 20:55.

  • #2
    Code:
    UPDATE `tabelle` SET `stelle` = `stelle`+1 WHERE `stelle` > 5;
    oder sowas? der rest lässt sich wahrscheinlich ableiten... jedoch ist die lösung weder performant noch sicher.

    Kommentar


    • #3
      Danke für die Antwort.
      Ich denke das wird reichen um dies Umzusetzen. Hab wohl ein Brett vor dem Kopf gehabt

      Kommentar


      • #4
        In der Art hats geklappt.
        PHP-Code:
        $sql "UPDATE images SET position = position +1 WHERE position >= ".$_SESSION['position'].""
        Danke nochmals

        Kommentar

        Lädt...
        X