EXAKT följande text skriver jag in i en <textarea>:
janne
bruno
klas#
berit
maggan
eva#
ragnhild
fredrik
mårten
Tecknet # betyder att här ska Datumet adderas med 1.
VARJE ny rad (vbcrlf) i <textarea> betyder EN NY POST i databasen.
Allt detta hade jag tänkt att fixa med split() och en array (eller så många som behövs).
Posterna i databasen ska se ut på följande vis:
Namn | Datum
---------|---------
janne | 2002-11-19
bruno | 2002-11-19
klas | 2002-11-19
berit | 2002-11-20
maggan | 2002-11-20
eva | 2002-11-20
ragnhild | 2002-11-21
fredrik | 2002-11-21
mårten | 2002-11-21
Hoppas att ni fattar detta nu.. ;)
Annars får ni hojta till!
@ndersMedlem sedan juni 200032 969 inlägg Nu förutsätter jag vissa saker, men någonting sånt här borde fjunka:
varMyArray = Split(strValues, vbCrLf)
dteDate = Date
for i = 0 to ubound(varMyArray)
if right(varMyArray(i), 1) = "#" then dteDate = DateAdd("d", 1, dteDate)
strSQL = "INSERT INTO Tabell (fldNamn, fldDatum) VALUES ('" & Replace(Replace(varMyArray(i), "#", ""), "'","''") & "', #" & dteDatum & "#)"
'Exekvera!
next
Mvh,
Kolla lite på detta, kod från ett gammalt, gammmal projekt. Det där med datumet vet jag iten, är inte så bra på det...
If Request.QueryString("Way") = "delivery" Then
TheString = Request.Form("orderID")
TheString = Replace(TheString,Chr(13)&Chr(10),"")
TheArray = Split(TheString,",")
For i = 0 To Ubound(TheArray)
Delivery = "UPDATE orders SET Delivered = '" & Date & "' WHERE orderID = '" & TheArray(i) & "' "
Connect.Execute(Delivery)
Next
End If
Då skrev jag så här i rutan:
7834238934,
38983443,
38833
:)
PallemanMedlem sedan dec. 2000557 inlägg
@nders skrev:
Nu förutsätter jag vissa saker, men någonting sånt här borde fjunka:
varMyArray = Split(strValues, vbCrLf)
dteDate = Date
for i = 0 to ubound(varMyArray)
if right(varMyArray(i), 1) = "#" then dteDate = DateAdd("d", 1, dteDate)
strSQL = "INSERT INTO Tabell (fldNamn, fldDatum) VALUES ('" & Replace(Replace(varMyArray(i), "#", ""), "'","''") & "', #" & dteDatum & "#)"
'Exekvera!
next
Mvh,
Smidig kod @nders! :)
Men.. borde inte dteDate = Date flyttas in i for-satsen för att få det mer korrekt?
@ndersMedlem sedan juni 200032 969 inlägg
Palleman skrev:
Men.. borde inte dteDate = Date flyttas in i for-satsen för att få det mer korrekt?
Inte som jag tolkar frågan. Om jag förstår saken rätt skall datumet räknas upp med ett för varje brädgård som återfinns sist, efter namnet, men inte återställas någon gång. Om det däremot skulle läggas på en dag på dagens datum, istället för senast begagnat datum, för varje brädgård som dyker upp, så har du helt rätt.
Så du eller jag missuppfattar frågan en aning tror jag, men inte värre än att det går lätt att pilla till. ;)
Mvh,
PallemanMedlem sedan dec. 2000557 inlägg Ähumm.. :r
Som min fänrik sa: Du har rätt, jag har fel - jag bestraffar mig själv med 50 armhävningar..
Nu såg jag, läste inte frågan ordentligt.. sorry ;)
kanoon "gubbar".. :P
Ska kolla upp det imorgon, ser lovande ut..
har provat nu, fick göra lite ändringar...
Fick sätta brädgården i början av varje namn istället, annars så blev den raden med brädgården sist "nästa" datum..
strText = request.form("text")
varArray = split (strText, vbCrLf)
Datums = CDate(Datums)
for i = 0 to ubound(varArray)
if left(varArray(i), 1) = "#" then Datums = DateAdd("d", 1, Datums)
SQL:en
Exekveringen!
next
Tack ska ni ha, nu kan jag sova gott inatt. ;)
@ndersMedlem sedan juni 200032 969 inlägg
JAreMANNEN skrev:
Fick sätta brädgården i början av varje namn istället, annars så blev den raden med brädgården sist "nästa" datum..
Annars hade du ju kunnat flytta if-satsen till precis efter SQL-satsen istället.
mvh,
@nders skrev:
JAreMANNEN skrev:
Fick sätta brädgården i början av varje namn istället, annars så blev den raden med brädgården sist "nästa" datum..
Annars hade du ju kunnat flytta if-satsen till precis efter SQL-satsen istället.
mvh,
hrm, där ser man prov på vad "skiljer den vise från den envise" :r