webForumDet fria alternativet

fungerar det inte att göra så här?

ASP

10 svar · 361 visningar · startad av mikael_a

Medlem sedan mars 2000475 inlägg
Frågan#1

SQLStmt = "SELECT * FROM film_nyheter WHERE datum = 'MonthName(Month(Date))' order by vecka"

för att ta reda på aktuell månad och sortera databasen efter det?

får inga fel meddelanden, men inte heller någon data.

/micke

------------------
Micke & Annas Sajt
micke@micke-anna.nu

Medlem sedan juni 2000547 inlägg
#2

SQLStmt = "SELECT * FROM film_nyheter WHERE datum = " & MonthName(Month(Date)) & " ORDER BY vecka"

Medlem sedan dec. 200012 464 inlägg
#3

Nu jämnför du ett datum-värde med strängen Monthname(... Använd (jag antar att datum är av typen date och att du använder access)

where MonthName(Month(datum)) = MonthName(Month(Date()))
Medlem sedan mars 2000475 inlägg
#4

Odefinierad funktion 'MonthName' i uttryck.

/data/filmnyheter/filmnyheter.asp, rad 6

det verkar inte fungera... men jag gör kanske fel?

SQLStmt = "SELECT * FROM film_nyheter WHERE MonthName(Month(datum)) = MonthName(Month(Date())) ORDER BY vecka"

------------------
Micke & Annas Sajt
micke@micke-anna.nu

Medlem sedan dec. 19996 721 inlägg
#5

Får man fråga vad som finns i kolumnen datum? Varför blanda in monthname?

Medlem sedan juni 2000690 inlägg
#6

mikael_a:
Jag antar att detta rör samma problem du frågat om tidigare?

Först måste du göra klart vad som står i databasen och i vilket format som emission säger.
Har du verkligen en kolumn kallad datum i datumformat så borde det funka med koden jag skickade dig tidigare. Sen får du själv styra upp i aspkoden så den tar rätt intervall till den månad du vill visa. Alternativt så får du helt enkelt göra en kolumn för år, en för månad och en för dag om det är lättare för dig att sortera så.

------------------
MvH
/Bengan
www.bengan.com
"Your mouse has moved. Windows will now restart to accept the changes."

Medlem sedan mars 2000475 inlägg
#7

jag använder monthname för att få datumet omgjort till namn istället för siffor, (december istället för 12) detta sparas i datum i databasen (acess) så långt fungerar det, jag har också klurat ut så att den bara visar tex december... men det jag försöker att göra är att den endast skall visa aktuell månads data automatiskt, utan att behöva trycka på länken december. så hur sorterar jag på detta sätt.

------------------
Micke & Annas Sajt
micke@micke-anna.nu

Medlem sedan mars 2000475 inlägg
#8

Det fungerar inte heller, det visar ingen data, inga fel medd. heller. kanske är det fel på mina datum format?

användarna uppdaterar filmnyheterna via ett formulär, i detta formulär skickar jag även en datum sträng till databasen, då använder jag mig utav.

<input name="datum" value="<%=MonthName(Month(Date))%>"></font></td>

det gör så att det står "december" i formulär rutan. December skickar jag till databasen film_nyheter.mdb kolumen datum.

detta stämer eftersom om jag tittar i databasen står det december efterden senaste inskrivna filmen.

sedan har jag gjort ett filmarkiv så att alla filmer delas upp i månads vis, tex januari, februari osv...

SQLStmt = "SELECT * FROM film_nyheter WHERE datum = 'januari' order by vecka

detta fungerar också...

det är när man går in på "filmnyheter" som endast den aktuella månaden skall visas, som nu då december, de övriga filmerna som ligger i databasen sorteras ju upp i filmarkivet efter månad.

vet du kanske något annat sätt?

/micke

------------------
Micke & Annas Sajt
micke@micke-anna.nu

Medlem sedan juni 2000690 inlägg
#9

Verkar lite onödigt tillkrånglat det här :)
Förstår inte vitsen med att spara datumnamnet, vore enklare att endast spara datumet direkt.

Ta och posta exakt hur databasen är uppbyggd... Har du alltså en kolumn kallad datum som innehåller månadens namn och en kolumn för vilken vecka det är? Men årtalet då? Du måste ju även sortera efter årtal annars blir det rörigt efter ett år ;)

Sen för att ta ut den här månadens inlägg så borde det bara vara att köra en SQL som väljer ut där månaden= Month(Date()) och året= Year(Date()).

------------------
MvH
/Bengan
www.bengan.com
"Your mouse has moved. Windows will now restart to accept the changes."

Medlem sedan mars 2000475 inlägg
#10

varför jag endast sparar datum namnet, beror på att det oberoende år skall fungera, skriver jag 2000-01-01 så nästa år får jag gå in och ändra till 2001 istället.

databasen är uppbyggd så här:

id:
filnamn: (sparar .jpg eller .gif bilden
filstorlek (så att max 50kb bilder kan användas)
handling: (filmens handling)
regissör:
skådepselare:
årtal:
längd:
filmbolag:
datum: (står nu endast december i)
vecka: (ej med date, denna är till för vilken vecka filmen släpps)

efter 1 år töms databasen, därför behöver jag inte sortera efter år.

jag kanske har krånglat till det? fast är ingen expert på asp, så man lär sig av misstagen.

/micke

------------------
Micke & Annas Sajt
micke@micke-anna.nu

Medlem sedan dec. 19996 721 inlägg
#11

Men du bör lagra datumet som ett datum ändå. Det är inget problem att söka ut alla februari, oavsett år.

260 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
126 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)