Jag förstod inte din förklaring, men kolumnerna i sql-frågan har ett index tilldelat sig. Första kolumnen 0, andra 1, tredje 2 osv. Du kan alltså nå innehållet i första kolumnen med:
rs(0)
Om ditt recordset nu heter rs.
8 svar · 348 visningar · startad av Bjarne A
Skulle vilja hämta värden ur databasens kolumner enligt en variabel som räknat fram innan
kolumnerna är då döpta till 1, 2, 3 ,osv
Det funkar med
<%= Rs("2")%>
men inte med
<%= Rs("rutvarde2")%>
<!--#INCLUDE file="adovbs.inc"--> <% Set connect = Server.CreateObject("ADODB.connection")
connect.Open "driver={Microsoft Access Driver (*.mdb)};dbq=D:\home1\domanen\db\db2.mdb"
%>
<%
SQL = "SELECT * FROM 2005 WHERE manad = '10'"
set Rs = connect.execute(SQL)
%>
<%
startdag = 1
%>
<table border="0" cellspacing="1" cellpadding="1" bgcolor="#6666FF">
<tr>
<td>
<div align="center">
<% rutvarde1 =2 - startdag %>
<%IF rutvarde1 < 1 THEN%>bla bla bla<%ELSE%>
<% = rutvarde1%><%= Rs("rutvarde1")%><%END IF%></div>
</td>
<td>
<div align="center">
<% rutvarde2 =3 - startdag %>
<%IF rutvarde2 < 1 THEN%>bla bla bla<%ELSE%>
<% = rutvarde2%><%= Rs("rutvarde2")%><%END IF%></div>
</td>
Får nog gå och koka makaroner i stället... det är jag bättre på :-)
Jag förstod inte din förklaring, men kolumnerna i sql-frågan har ett index tilldelat sig. Första kolumnen 0, andra 1, tredje 2 osv. Du kan alltså nå innehållet i första kolumnen med:
rs(0)
Om ditt recordset nu heter rs.
Jag tycker din datamodell luktar väldigt suspekt.
Du borde inte:
*) Kalla tabeller och / eller fält för bara siffror.
*) Lagra ett års poster i en tabell
Vad lagrar du i tabellen? Exakt hur ser den ut, och hur ser innehållet ut?
Ja jag kan hämta värdet med <%= Rs("2")%>
Jag har 31 kolumner för varje veckodag och en rad för varje månad 48 månader/rader
man skall kunna se om en gästlägenhet är bokad och boka lediga dagar
Att jag gör så här beror att jag skall kuna välja månad och år
i en rullista och rita upp en tabell enligt det där den förste i månaden hamnar under rätt veckodag
då kan man med "startdag" kunna räkna fram var den skall börja och visa tomma rutor innan
rutans värde minus startdagen, om det är mindre än 1 visa tom ruta större än 1 visa innehållet i den kolumnen. Därför har kolumnen siffernamn
Bjarne A skrev:
Jag har 31 kolumner för varje veckodag och en rad för varje månad 48 månader/rader
Jisses, hört talas om normalisering? ;)
Nu fattade jag inte exakt vad du vill uppnå, men varje veckodag bör vara en egen rad i tabellen och varje månad bör vara en egen rad i en annan tabell.
tblMonth
monthName / monthNumber
januari / 1
februari / 2
tblDay
dayName / dayNumber
Måndag / 1
Tisdag / 2
Sedan en relationstabell som knyter samman lämpliga uppgifter på ett bra sätt.
Fukar säkert men att börja om...
vill ju bara ha in värdet som jag räknar fram här
<%
Dim startdag, rutvarde1
startdag =1
rutvarde1 = 3 - startdag
%>
Jag får då fram att rutvarde1 är 2
och vill hämta innehållet i kolumnen som heter "2"
<%= Rs("rutvarde1")%>
men det funkar inte då det troligen är för att man inte kan ha räknevärden som namn
<%= Rs("2")%> funkar ju, men då är siffran ett namn
Bjarne A skrev:
Fukar säkert men att börja om...
Förr eller senare får du bygga om. Rätt som det är har du byggt in dig i ett hörn. Frågan är vilket som är enklast, börja om nu eller senare. ;)
Tack!