Hey mensen,

Ik heb nu een systeem, met nieuws. Nu is het zo dat iedere gebruiker nieuws kan toevoegen. en het is op een speciale manier, namelijk dat er 1 tabel is, met alle gebruiker data, dus: naam, wachtwoord, user_id, email, titel, enz. en daar zitten ook bij: nieuws1 nieuws2 nieuws3 tot en met 10.

Nu is het dus zo dat een gebruiker dus 10 nieuws dingen kan toevoegen.
Maar stel ik zit aan de tien, dan moet alles zeg maar 'opschuiven'
nieuws1: [content]
nieuws2: [content]
nieuws3: [content]
nieuws4: [content]
nieuws5: [content]
nieuws6: [content]
nieuws7: [content]
nieuws8: [content]
nieuws9: [content]
nieuws10:[content]
Als ik dan dus nog meer content wil invullen, dan komt de laatste toevoeging in veld nieuws10 (word gewist en dan beschreven). de content die in veld10 stond, gaat naar veld 9, van veld 9 naar 8 enz.

Maar nu is mijn vraag: hoe moet ik dat doen?

MvG, Niek
Je begon erg goed met die tabel met gebuikers data maar toen >>>HORROR<<< !!!

Is een nieuws bericht gebruikers data??

Ik zou hiervoor een 2e tabel maken met de naam news, met bijvoorbeeld deze structuur:

news_id (int en auto_increment)
user_id (int)
content (text)
Een typisch voorbeeld van een verkeerd datamodel.
Doe het beter zo:

tabel gebruiker:
naam, wachtwoord, user_id, email, titel, enz.

tabel nieuws
news_id, userid,nieuwsbericht, datum


tel met een query hoeveel nieuwsitems een gebruiker heeft staan, en als het er meer dan 10 zijn dan de oudste wissen en de nieuwe erin zetten.
Dit werkt veel beter, en is ook veel beter te onderhouden.

[edit]kolom nieuws_id toegevoegd aan de tabel nieuws[/edit]
je bedoelt dat je ze niet op volgorde krijgt ofzo he?

zet er dan een datum veld bij en doe
SELECT * FROM tabel ORDER by datum ASC
of DESC,

als dat is wat je bedoelt?
ok, maar ik dacht misschien kan het tog weetje wel :p

Maar tog bedankt!
@verbeek niels

Er staat geen datum bij het nieuwsbericht, dus dat werkt niet. Het gaat er ook om hoe die ervoor kan zorgen dat bericht10 vervangen wordt wanneer alle berichten zijn gevuld.
@verbeek niels: Als je een auto nummering veld in die nieuws tabel hebt en deze is de primary key dan weet je in welke volgorde een gebruiker nieuws heeft geplaatst. Dus kun je de oudste ook weer verwijderen.
@Martijn
Dat gaat niet altijd op, beter is om een datum veld toe te voegen.. (dan kan je ook de nieuwsberichten gemakkelijk op datum sorteren)

Reageren