Forum sticky threads orderen SQL

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jasper Schellekens

Jasper Schellekens

10/03/2018 13:20:59
Quote Anchor link
Ik ben een forum aan het maken. En nu laat ik de threads op de volgende manier zien:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$sql = "SELECT * FROM FORUMSTHREADS WHERE FORUMID='$forumid' ORDER BY TIME DESC";


Nu wil ik dat 'sticky' threads boven aan worden laten gezien. Een thread is sticky als de value op 1 staat.

Dus nu probeer ik dat met dit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$sql = "SELECT * FROM FORUMSTHREADS WHERE FORUMID='$forumid' ORDER BY TIME, STICKY DESC";


Alleen werkt dit niet echt helemaal. Wat het eigenlijk doet is ORDER BY TIME ASC en met sticky doet hij helemaal niets. Wat doe ik fout?
 
PHP hulp

PHP hulp

20/04/2024 07:08:06
 
Rob Doemaarwat

Rob Doemaarwat

10/03/2018 13:37:20
Quote Anchor link
Dan moet je het ook omdraaien. Eerst "sticky", en dan pas op tijd.
Gewijzigd op 10/03/2018 14:20:51 door Rob Doemaarwat
 
Thomas van den Heuvel

Thomas van den Heuvel

10/03/2018 16:09:20
Quote Anchor link
Ook wil je waarschijnlijk nog steeds de laatste threads eerst tonen, dus voor TIME (is dat geen gereserveerd woord?) zul je ook opnieuw DESC moeten zetten, ofwel ORDER BY STICKY DESC, TIME DESC.

Als je geen richting aangeeft bij een ORDER BY clause (ASC/DESC) wordt data altijd standaard ASC(ending) opgehaald.
 
Jasper Schellekens

Jasper Schellekens

11/03/2018 20:23:11
Quote Anchor link
Thomas van den Heuvel op 10/03/2018 16:09:20:
is dat geen gereserveerd woord?


Jawel en vandaar kwamen ook problemen., Daar lag ook een probleem. Dit gaf natuurlijk vreemde resultaten.
Nu heb ik het op weten te lossen met de volgende query met dank aan jullie:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SELECT * FROM FORUMSTHREADS WHERE FORUMID='$forumid' ORDER BY STICKY DESC, DATETIME DESC


Nu heb ik nog een vraag. De meeste forums gebruiken code en qoute tags. Maar hoe stel ik zo een soort bb code in? Ik vind niet echt duidelijke berichten hierover op het internet. Wordt dit met str_replace gedaan?
Gewijzigd op 11/03/2018 20:40:35 door Jasper Schellekens
 
Thomas van den Heuvel

Thomas van den Heuvel

11/03/2018 20:50:49
Quote Anchor link
Een methode die volgens mij vaak wordt gebruikt zijn reguliere expressies, maar nog beter zou een soort van parser zijn die ook geneste tags (zoals quotes) goed kan verwerken.

Het hangt natuurlijk ook een beetje af voor welk publiek je een forum aan het maken bent. En hierbij komen nog een heleboel andere dingen kijken zoals privileges en correcte weergave van exotische tekens enzo *kuch*.

EDIT: natuurlijk zijn er ook andere formaten / oplossingen denkbaar, zoals bijvoorbeeld Markdown ofzo. Of een WYSIWYG-editor met beperkte HTML-mogelijkheden, maar dat hangt dus nogmaals af van je publiek en waar het forum voor dient.

EDIT: en inderdaad, dit is in principe een ander onderwerp, en daarom zou het ook beter zijn om hier een nieuw draadje voor te maken.
Gewijzigd op 11/03/2018 20:56:41 door Thomas van den Heuvel
 
- Ariën  -
Beheerder

- Ariën -

11/03/2018 20:53:47
Quote Anchor link
Dat is het werk van een UBB-parser, maar dit staat los van 'sticky thread'.

Binnen forums zijn UBB-codes vrij gebruikelijk. Markdown wordt minder vaker gebruikt.

Maar ook zou een nieuwe thread hierover aanmaken.
Gewijzigd op 11/03/2018 20:55:23 door - Ariën -
 
Adoptive Solution

Adoptive Solution

12/03/2018 10:18:40
 
Ben van Velzen

Ben van Velzen

12/03/2018 11:02:51
Quote Anchor link
Dan zou ik eerder naar deze kijken: https://www.phphulp.nl/php/script/data-verwerking/bbcode-parser-v-01/1558/
*schaamteloze plug naar familie*
 
Thomas van den Heuvel

Thomas van den Heuvel

12/03/2018 11:59:59
Quote Anchor link
ca. 11 jaar oud - is die code nog steeds up-to-date? En wordt deze nog onderhouden? Het eerste wat ik meestal lees bij dit soort dingen zijn de comments, daaruit bleek dat er bepaalde dingen nog niet helemaal lekker liepen, is dat reeds verholpen? Het ziet er best ok uit, op een gegeven moment heb ik ook geprobeerd om zoiets te schrijven, grappig dat mijn laatste versie heel veel weg had van die code, maar ik was er op een gegeven moment weer mee gekapt haha. Maar wel qua stappen in grote lijnen hetzelfde.

- bad gateway, whee~
Gewijzigd op 12/03/2018 12:26:36 door Thomas van den Heuvel
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.