<% @ LANGUAGE="VBSCRIPT" %> <% Option Explicit 'Alla variabler måste definieras, bra för felsök %> Data Obs! Data för station 1. Nissan, Slottsmöllan finns på datavärdens hemsida. <% Const adLockReadOnly = 1 Const adOpenStatic = 1 Dim fs, conn, rs, sql, Lokalnamn, Parameter, StartYear, EndYear, max, barwidth, graphYear, graphMonth, dot, bar, Charttype, range, tabell, y, border, LessThan, i 'y är y-axelns uppdelning och sätts till 5 y=5 Set fs=Server.CreateObject("Scripting.FileSystemObject") If not (fs.FileExists(Server.Mappath("..\..\odbc\data.mdb")))=true Then Response.Write("Det går för tillfället inte att läsa från databasen. Förmodligen pågår uppdatering av datan. Försök igen senare eller kontakta förbundet för information.") set fs=nothing Else set conn=Server.CreateObject("ADODB.Connection") conn.Provider="Microsoft.Jet.OLEDB.4.0" conn.Open(Server.Mappath("..\..\odbc\data.mdb")) set rs=Server.CreateObject("ADODB.recordset") sql="SELECT Lokalnamn FROM lokalnamn ORDER BY Lokalnamn" rs.Open sql,conn Lokalnamn=request.querystring("Lokalnamn") %>

Lokalnamn: <% if lokalnamn="" then rs.Close set rs=Nothing %>

<% elseif Parameter="" then set rs=Server.CreateObject("ADODB.recordset") sql="SELECT data.* FROM (lokalnamn INNER JOIN data ON lokalnamn.nr=data.lokalnamn_nr)" sql=sql & " WHERE Lokalnamn='" & Lokalnamn & "'" rs.Open sql,conn Parameter=request.querystring("Parameter") %>

Parameter: <% if Parameter="" then rs.Close set rs=Nothing elseif StartYear="" then set rs=Server.CreateObject("ADODB.recordset") sql="SELECT DISTINCT LEFT(Provtagningsdag,4) AS dropdownyear FROM (lokalnamn INNER JOIN data ON lokalnamn.nr=data.lokalnamn_nr)" 'Eftersom StartYear är string hämtar jag en string (osäker på om det är helt rätt) sql=sql & " WHERE Lokalnamn='" & Lokalnamn & "'" sql=sql & " AND `" & Parameter & "` IS NOT NULL" sql=sql & " ORDER BY LEFT(Provtagningsdag,4)" rs.Open sql,conn StartYear=request("StartYear") %>

Välj tidsintervall från <% if StartYear="" then %> <% elseif EndYear="" then EndYear=request("EndYear") %> till <% if EndYear="" then rs.Close set rs=Nothing %> <% Elseif Charttype="" then Charttype=request("Charttype") %>

Diagramtyp: value="dot"> Punktdiagram value="bar"> Stapeldiagram

<% LessThan=request("LessThan") %> "Mindre än"-värden: value="yes"> Visa value="no"> Dölj

Visa resultat i tabell > <% if Charttype="" then rs.Close set rs=Nothing %>

<% Else %>

<% 'Här gör vi en tabell med data om checkboxen bockats för. if tabell="on" then rs.close set rs=nothing set rs=Server.CreateObject("ADODB.recordset") sql="SELECT `" & Parameter & "`,Provtagningsdag FROM lokalnamn INNER JOIN data ON lokalnamn.nr=data.lokalnamn_nr WHERE" sql=sql & " Lokalnamn='" & Lokalnamn & "'" sql=sql & " AND YEAR(Provtagningsdag) BETWEEN '" & StartYear & "'" 'Provtagningsdag måste vara i samma format som StartYear och EndYear sql=sql & " AND '" & EndYear & "'" sql=sql & " AND `" & Parameter & "` IS NOT NULL" sql=sql & " ORDER BY Provtagningsdag" rs.Open sql,conn, adOpenStatic, adLockReadOnly %>
Värden på <% =Parameter %> för lokalen <% =Lokalnamn %>
Negativa värden anger "mindre-än"-värden

<% rs.MoveFirst do until rs.EOF %> <% rs.MoveNext loop end if %>
Provtagningsdag <% =Parameter %>
<% =rs.fields("Provtagningsdag") %> <% =rs.fields(Parameter) %>
<% 'Sedan stänger vi rs och conn så att de frigörs för nästa fråga. rs.close conn.Close set rs=Nothing set conn=Nothing End If End If End If End If End If End If %>