login  Naam:   Wachtwoord: 
Registreer je!
 Forum

forum SQL

Offline compudoc - 13/10/2007 16:16 (laatste wijziging 14/10/2007 10:17)
Avatar van compudocPHP beginner ik heb een vraagje omtrent het opbouwen van een forum met het slim gebruiken van een database. Ik heb nu de basis voor het simpele forum wat ik wil gebruiken.

de tabellen voor in de database:
#topic_start
- id
- categorie
- titel
- bericht
- user
- datum // datum + tijd d.m.v. datetime dat het topic is gestart
- wijziging // datum + tijd van wijziging

#topic_reactie
- id
- user
- TSstartID // id van het start topic
- datum
- bericht
- wijziging

#topic_categorie
- CatID
- CatName
- CatAbout // informatie over de categorie
- HeadCatID // evt. hoofdcategorie (met dank aan marten)
- contentRead // topics/cats lezen
- contentAdd // posten /
- contentEdit // titel/bericht wijzigen
- contentSet // sticky, closed ed
- contentDelete // topics/cats deleten

dit zijn de tabellen die ik gebruik voor het forum.
Nou zou ik graag willen weten of dit slim is of dat ik beter wijzigingen erin kan aanbrengen en evt. weten jullie nog iets wat ik er bij kan doen uit ervaring ofzo...

Alvast bedankt,

13 antwoorden

Gesponsorde links
Offline marten - 13/10/2007 16:32
Avatar van marten Beheerder Wat nu als je subcategorien hebt 

#topic_categorie
- CatID
- CatName
- CatAbout
- HeadCatID
Offline compudoc - 13/10/2007 16:36 (laatste wijziging 13/10/2007 16:37)
Avatar van compudoc PHP beginner bedankt marten, hij is erbij gezet...
is de rest slim om te gebruiken?

en ik zie hier op sitemasters voortaan #topic, #1, enz. staan.
waarvoor is dit en is het slim om zoiets ook in mijn forum te plaatsen.

PS. misschien is dit wel al vermeld waarvoor het er staat, maar ik ben naar parijs geweest op excursie dus ben er ff niet geweest...
Offline nemesiskoen - 13/10/2007 17:03
Avatar van nemesiskoen Gouden medaille

PHP expert
topicstart en topicreactie kan gewoon in 1 tabel
Offline compudoc - 13/10/2007 17:09
Avatar van compudoc PHP beginner maar dan wordt de tabel toch hardstikke groot en onoverzichtelijk?
Offline Ibrahim - 13/10/2007 21:43
Avatar van Ibrahim PHP expert
compudoc schreef:
maar dan wordt de tabel toch hardstikke groot en onoverzichtelijk?


Het is maar wat je fijn vind, of je gebruikt 1 tabel of je gebruikt 2 tabellen. Het is je eigen keuze 
Offline vinTage - 13/10/2007 21:57
Avatar van vinTage Nieuw lid #1 #2 tm #whatever..

Dat hoeft niet in een tabel, want dat heb je al (#topic_reactie =>id)
En waar het voor is ? nou dat is gewoon handig, voorheen moest je in de source gaan snuffelen naar desbetreffende id, nu kan je gewoon c&p doen.
Offline CDNC - 13/10/2007 22:43 (laatste wijziging 13/10/2007 22:47)
Avatar van CDNC PHP ver gevorderde Ik zou, als ik jou was je namen nog wat aanpassen:
  1. #CATEGORIE
  2. - catID
  3. - parentID /* indien een 'main' cat parentID = 0 */
  4. - thisVisible /* deze cat zichtbaar, enkel nuttig als parentID 0 is */
  5. - contentRead /* topics/cats lezen */
  6. - contentAdd /* posten */
  7. - contentEdit /* titel/bericht wijzigen */
  8. - contentSet /* sticky, closed ed*/
  9. - contentDelete /* topics/cats deleten */
  10.  
  11. #TOPIC
  12. - topicID
  13. - catID
  14. - firstPostID /* link naar #reactie */
  15.  
  16. #REACTIE
  17. - reacID
  18. - catID /* optioneel , werkt moeilijker ivm cats verplaatsen maar werkt makelijker voor een cat te verwijderen */
  19. - userID
  20. - datum
  21. - titel
  22. - message


mss bij #topic nog een veld: lastPostDate voor het orderen op laatst actieve topic, can ook met joins en dat gedoe maar me een extra veldje is het veel simpeler
bij #reactie kan je nog UBB/SMYLIE/HTML aan/uit optie toevoegen, eventueel ook lastEdited: spreekt voor zich
Offline nemesiskoen - 13/10/2007 23:47
Avatar van nemesiskoen Gouden medaille

PHP expert
Citaat:
maar dan wordt de tabel toch hardstikke groot en onoverzichtelijk?


Dan is je tabel per topic 1 record groter. Als je een gemiddeld aantal van 10 reacties neemt op een topic dan zal dat 1ne record de tabel niet HARDSTIKKE groot maken.
Offline Ibrahim - 14/10/2007 00:46
Avatar van Ibrahim PHP expert CDNC, ik snap je categorie structuur niet echt..., waarvoor dienen:

  1. - contentRead /* topics/cats lezen */
  2. - contentAdd /* posten */
  3. - contentEdit /* titel/bericht wijzigen */
  4. - contentSet /* sticky, closed ed*/
  5. - contentDelete /* topics/cats deleten */
Offline Abbas - 14/10/2007 02:27
Avatar van Abbas Gouden medaille

Crew .NET
Anders moet je eens iets leren: het normaliseren van databases. Als je dit helemaal onder de knie hebt, weet je hoe je een DB in elkaar moet steken... 
Offline CDNC - 14/10/2007 09:49
Avatar van CDNC PHP ver gevorderde
Psycho schreef:
CDNC, ik snap je categorie structuur niet echt..., waarvoor dienen:

[..code..]


welke rang je moet hebben om die cat te mogen zien/posten/wijzigen ed

0 => niet ingelogd
1 => ingelogd
2 => member met rechten
3 => ...
...
9 => site admin
Offline compudoc - 14/10/2007 10:20
Avatar van compudoc PHP beginner ik heb het erbij gezet...
wat voor rechten moet ik allemaal hebben?

1. niet ingelogd
2. ingelogd
3. ingelogd + wachtwoord bescherming
4. ...
5. ...
6. administrator

moet ik nog meer rechten hebben of niet?
Offline CDNC - 14/10/2007 11:39
Avatar van CDNC PHP ver gevorderde - medewerker
- moderator
kun je ook nog doen

dat zijn dan voor de algemene rangen, je kunt vb nog 1 persoon toelaten tot een bepaalde cat maar die toch rang 2/3 is door een extra tabel te maken:
  1. #user_access
  2. - accessID
  3. - catID
  4. - userID
  5. - contentRead
  6. - contentAdd
  7. - contentEdit
  8. - contentSet
  9. - contentDelete


als je zo werkt moet je wel min. 2 sessions laten rond gaan: 'rang' en 'userID'
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.215s