Willkommen in der Webstatt Zum Webstatt Blog und Stories
Erdo am 13.04.06 19:33

Mooooin,

ich habe da ein Problem bzw eine Frage, wie ich mit folgendem Newssystem und dem Auftrag verfahren soll: http://www.scgreven09-handball.de/Saison_HP_2006-2007

Wie zu sehen ist, gibt es 2 Hauptmeldungen und es sollen 4 kleinere Meldungen geben. Dafür habe ich in der MySQl Tabelle die Spalte `modus` angelegt.
1 = Hauptmeldung 1 "WHERE modus = ' . 1 . ' ORDER BY time DESC LIMIT ' . 1"
2 = Hauptmeldung 2 "WHERE modus = ' . 2 . ' ORDER BY time DESC LIMIT ' . 1"
3 = kleinere Meldung "WHERE modus = ' . 3 . ' ORDER BY time DESC LIMIT ' . 4"

Nun kann man beim Posten der News zwischen diesen drei Möglichkeiten wählen. Wenn es aber schon die Hauptmeldungen 1 und 2 gibt und man eine neue Hauptmeldung 1 macht, so soll die vorherige Hauptmeldung 1 zu 2 und die vorherige Hauptmeldung 2 zur kleineren Meldung 3 wären. So weit so ja kein Problem. Nur soll das alles automatisch passieren, dass die Modi-Zahlen geändert werden und ich nicht bei Bearbeiten den `modus` selber ändern muss.

Hat einer eine Idee, wie ich das realisieren kann?

Grüße,
Erdo

netcup.de Warum gibt es hier Werbung?
Michael Michael am 13.04.06 19:41

Wie konkret brauchst du denn den Code?
Ganz grob würde ich folgendes Vorgehen empfehlen:

Wenn eine News mit dem Modus .1. erstellt wird (oder der Modus auf .1. geändert wird). Fragst du ab, ob es schon eine News des Modus .1. gibt und wenn ja führst du die beiden Updates vor dem Einfügen aus
UPDATE tabelle SET modus = '.3.' WHERE modus = '.2.'
und UPDATE tabelle SET modus = '.2.' WHERE modus = '.1.'

Analog für den Fall .2. eben nur ein Update:
UPDATE tabelle SET modus = '.3.' WHERE modus = '.2.'

Genaugenommen musst du - zumindest im zweiten Fall - gar keine Überprüfung durchführen.

Hilft dir das?
Michael

Erdo am 14.04.06 11:48

Ich glaube schon, dass mir das hilft. Danke Michael!

Sonst nerve ich nochmal über ICQ. :D

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

Impressum & Kontakt