webForumDet fria alternativet

Flytta trådar-problem...

9 svar · 216 visningar · startad av bassebhu

bassebhuMedlem sedan nov. 20016 480 inlägg
#1

Hej!

Jag har ett forum med olika kategorier. Om någon postar i fel forum så kan admin flytta den tråden. När tråden flyttas så sparas vilken kategori den ska flyttas till, vilken kategori den flyttades ifrån samt vilken tid detta gjordes. I varje kategori hämtas alla inlägg som ligger i den kategorin, samt alla inlägg som blivit flyttade därifrån sedan ett dygn tillbaka, märkta med "Flyttad". Detta ordnat efter senaste inlägg postade i tråden.
- Allt fungerar perfekt förutom en sak! Om någon postar ett inlägg i tråden när den ligger i den nya kategorin så hoppar den även upp i den gamla kategorin.

Det betyder att jag i kategorierna vill hämta
* alla inlägg som hör till kategorin
* alla inlägg som flyttats från kategorin det senaste dygnet
MEN som sagt. när jag hämtar de flyttade trådarna vill jag inte att det ska ordnas efter senast uppdaterad, utan efter när den blev flyttad.

Min kod: (Redigerat med radbrytning för att göra mer lättläst)

SQL = "SELECT * FROM forum Where cat = '"&Request.QueryString("cat")&"'
 And forum = '"&Request.QueryString("forum")&"' And answer = 'thread' Or
 movecat = '"&Request.QueryString("cat")&"' And moveforum = '"&
Request.QueryString("forum")&"' And answer = 'thread' 
And NOT DateDiff('d', movedate, Now()) > 1 ORDER BY updated desc"

Som ni ser så ordnas det nu efter senast uppdaterade tråd (updated) och det gäller ju då även de flyttade trådarna. jag vill att de flyttade trådarna ska blandas in med de "riktiga" fast ordnas efter movedate i stället för update.

Ge även förslag om man kan skriva det snyggare tack ;)

Tack!

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Flyttas från ASP till sql.

Access DBMS eller?

bassebhuMedlem sedan nov. 20016 480 inlägg
#3

Access ja. sorry. tänker asp eftersom det är i samband med ett aspscript :)

bassebhuMedlem sedan nov. 20016 480 inlägg
#4

Någon? :)

@ndersMedlem sedan juni 200032 969 inlägg
#5

Jag hade provat något sånt härnt; men eftersom jag inte använder Access vet jag inte om det fungerar. :D

SQL = "SELECT * FROM forum Where cat = '"&Request.QueryString("cat")&"'
 And forum = '"&Request.QueryString("forum")&"' And answer = 'thread' Or
 movecat = '"&Request.QueryString("cat")&"' And moveforum = '"&
Request.QueryString("forum")&"' And answer = 'thread' 
And NOT DateDiff('d', movedate, Now()) > 1 ORDER BY iif(movedate is not null, movedate, updated) desc"

Movedate har endast ett värde när tråden flyttats?

bassebhuMedlem sedan nov. 20016 480 inlägg
#6

japp, movedate har bara värde då. det funkade fett bra! förutom en sak :P

eftersom den även reagerade på att movedate hade ett värde i den tillflyttade kategorin så slutade den att hoppa överst i trådlistan även där. såklart.

nu måste jag få veta hur manskriver om:
iif(movedate is not null, movedate, updated)

så att den inte gör det om kategorin är lika med trådens kategori
NOT forum = '"&Request.QueryString("forum")&"'

? :) hur bakar jag in det?

tack!

@ndersMedlem sedan juni 200032 969 inlägg
#7

Första parametern du skickar till Iif() är ju ett uttryck som skall evalueras. Därför borde det funka helt grejt att göra något sånt härnt:

iif(movedate is not null and NOT forum = '"&Request.QueryString("forum")&"', movedate, updated)

Notera borde. ;)

Mvh

bassebhuMedlem sedan nov. 20016 480 inlägg
#8

Givetvis! Det borde jag ha tänkt ut själv ;) Tack så himla mycket, trots att du är en sån där blå :P

@ndersMedlem sedan juni 200032 969 inlägg
#9

Varsågod. :bire

(Synd att jag inte tänkte, jag borde ju egentligen inte hjälpt dig. ;) )

bassebhuMedlem sedan nov. 20016 480 inlägg
#10

@nders skrev:

Varsågod. :bire

(Synd att jag inte tänkte, jag borde ju egentligen inte hjälpt dig. ;) )

Jag hade klarat det själv ändå :P
Säger vi

130 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)