webForumDet fria alternativet

varför skriver inte veckorna ut?

ASP

4 svar · 233 visningar · startad av voigtann1

Medlem sedan juni 20019 519 inlägg
Frågan#1

Kör denna kod:

SQL = "SELECT DatePart('ww',datum,2) AS vecka FROM nyheter WHERE year(datum) = " &qyear&" GROUP BY DatePart('ww',datum,2) ORDER BY DatePart('ww',datum,2) DESC"
set rs = databas.execute(SQL)
if not rs.EOF Then
  arrWeeks = rs.GetRows()
end if
rs.Close : Set rs = Nothing

response.write "<tr><td bgcolor='"& color1&"' class='td'><font class='font'>"
for i = 2003 to year(now)
    Response.Write " <a href=""?year="& i &""">"& i &"</a>  "
next

[b]if(isArray(arrWeeks)) Then
  Response.Write "Nyheter under detta året:"
  for i = 0 to UBound(arrWeeks,2)
    Response.Write "<a href=""?week="& arrWeeks(0,i) &"&year="&qyear&""">V"& arrWeeks(0,i) &"</a>  "
  next
end if[/b]

Den tjocka texten i koden... är som om den inte ens finns med när sidan skrivs ut... undra bara vad gör jag för fel?

Medlem sedan apr. 2002105 inlägg
#2

Prove det här:

if IsArray(arrWeeks) Then
  Response.Write "Nyheter under detta året:"
  for i = 0 to UBound(arrWeeks,2)
    Response.Write "<a href=""?week="& arrWeeks(0,i) &"&year="&qyear&""">V"& arrWeeks(0,i) &"</a>  "
  next
end if

Alltså att Tabort Parenteserna runt IsArray()

Medlem sedan juni 20019 519 inlägg
#3

de extra ) ( spelar ingen roll... dvs det hjälpte inte så mycket...

Medlem sedan juli 20011 084 inlägg
#4

Du får kanske inte med något ur databasen? Säker på att det finns poster som matchar det du söker efter?

För att testa lägga till en else-sats så vet du om arrayn är tom eller inte.

Medlem sedan juni 20019 519 inlägg
#5

jag provade: test.asp?year=2003&week=38
där jag vet att det finns en nyhet med denna kod:

week = request.querystring("week")
qyear = request.querystring("year")

if week = "" then week = DatePart("ww",date(),2) end if

if qyear = "" or qyear > year(now) or qyear < 2003 then qyear = year(now) end if

SQL = "SELECT id,datum,Rubrik,Information FROM nyheter where DatePart('ww',datum,2)=" &week&" AND datepart('yyyy',datum) = "&qyear&" ORDER BY datum DESC"
Set RecSet = Databas.Execute(SQL)

old_date = "1999-01-01"

if not recset.eof then
  arrNews = recset.GetRows()
end if

recset.close : set recset = nothing

if isArray(arrNews) Then
 for i = 0 to UBound(arrNews,2)
  cnt = cnt + 1
  strColor = color1
   If cnt Mod 2 = 0 then strColor = color2
  call writenews(arrnews(0,i),arrnews(1,i),arrnews(2,i),arrnews(3,i),strColor)
 next
else
 response.write "<tr><td bgcolor='#7894A0' class='td'><font class='news_headline_cell01'>Gamenotes Meddelanden</font><br></td></tr>"
 response.write "<tr><td class=td bgcolor='"&color1&"'><font><b>Ett fel uppstod</b></font><br>"
 response.write "<font class='news_headline_cell02'>Ingen text eller nyhet kunde hittas</font></td></a></tr>"
end if

response.write "<tr><td bgcolor='#7894A0' class='td'><font class='news_headline_cell01'>Nyhetsarkivet<br></font></td></tr>"

SQL = "SELECT DatePart('ww',datum,2) AS vecka FROM nyheter WHERE year(datum) = " &qyear&" GROUP BY DatePart('ww',datum,2) ORDER BY DatePart('ww',datum,2) DESC"
set rs = databas.execute(SQL)
if not rs.EOF Then
  arrWeeks = rs.GetRows()
end if
rs.Close : Set rs = Nothing

response.write "<tr><td bgcolor='"& color1&"' class='td'><font class='font'>"
for i = 2003 to year(now)
    Response.Write " <a href=""?year="& i &""">"& i &"</a>  "
next

if isArray(arrWeeks) Then
  Response.Write "Nyheter under detta året:"
  for i = 0 to UBound(arrWeeks,2)
    Response.Write "<a href=""?week="& arrWeeks(0,i) &"&year="&qyear&""">V"& arrWeeks(0,i) &"</a>  "
  next
end if

provade med else satsen.... och då skrev den ut vad den skulle skriva ut i else satsen... hur gör jag då så att den ta ut de värde jag vill få ut i SQL satsena?

263 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
127 ms — deklarationer (db)
0 ms — hämta statistik (cache)
132 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)