webForum webForum sponsras med lina och serverplats av Binero AB

Gå tillbaka   webForum > Utveckling > Webbutveckling > ASP

ASP Diskussioner om Active Server Pages, med relaterade scriptspråk (klassisk asp).

Svar
 
Trådverktyg Visningsalternativ
Äldre 2006-04-24, 11:33   #1
SoulGod
Medlem
 
Registrerad: 2005-08-20
Ort: Linköping
Inlägg: 1 363
Lösningar: 1
Räknare

Håller på att spara in den del info i en databas, och vill ha följande funktion.

Jag vill att en "räknare" skall tilldela varje rad i databasen, ett visst numer,
baserat på fältet "pos".
Om:
"pos" = chef , så skall det börja på 81xx
"pos" = dag , så skall det börja på 85xx
"pos" = kvall , så skall det börja på 89xx

Alltså t.ex 8101 , 8501 & 8901 o.s.v.

Hur gör jag detta?
__________________
//Martin aka SoulGod
Only the future, can tell u about ur past!
SoulGod besöker inte forumet just nu   Svara med citat
Äldre 2006-04-24, 12:09   #2
CatZ
Medlem
 
CatZs avatar
 
Registrerad: 2002-01-08
Ort: Oslo, Norge
Inlägg: 2 341
Lösningar: 30
Kod:
dim intPos
If pos = "chef" Then
	intPos = 8101
ElseIf pos = "dag" Then
	intPos = 8501
Else
    intPos = 8901
End If
Detta får du ju lägga in i loopen som skriver till databasen och modifiera som du vill. Inte snyggaste lösningen kanske men den fungerar
__________________
mvh CatZ
CatZ besöker inte forumet just nu   Svara med citat
Äldre 2006-04-25, 07:24   #3
SoulGod
Medlem
 
Registrerad: 2005-08-20
Ort: Linköping
Inlägg: 1 363
Lösningar: 1
Ehm, nu är jag lite väck här ..
loop ?
Menar du i :
Kod:
                  <%
if Request.QueryString("do") = "fixa" THEN
	namn = Request("namn")
	pos = Request("pos")
	fodd = Request("fodd")
	bor = Request("bor")
	mail = Request("mail")
	press = Request("press")

			Connect.Execute("INSERT INTO anstallda (namn,pos,fodd,bor,mail,press) VALUES('"& namn &"','"& pos &"','"& fodd &"','"& bor &"','"& mail &"','"& press &"')")

'	Next
	Connect.Close 
	Set Connect = Nothing
%>
För jag har ingen loop i det dokumentet.
__________________
//Martin aka SoulGod
Only the future, can tell u about ur past!
SoulGod besöker inte forumet just nu   Svara med citat
Äldre 2006-04-25, 07:50   #4
Jesper T
Medlem
 
Jesper Ts avatar
 
Registrerad: 2001-11-15
Ort: Järna
Inlägg: 7 050
Lösningar: 182
Tror att CatZ menar om du vill uppdatera en redan befintlig tabell med de värdena.

Kod:
Function getInt(value)
Dim intPos
    Select Case value
        Case "chef" : intPos = 81
        Case "dag" : intPos = 85
        Case "kvall" : intPos = 89
    End Select
    getInt = intPos
End Function

INSERT...VALUES('"& namn &"',"& getInt(pos) &"...
Men vad skall du ha där xx står?
__________________
Vänligen Jesper
Etisk kommunikation

Senast redigerad av Jesper T, 2006-04-25 klockan 07:58
Jesper T besöker inte forumet just nu   Svara med citat
Äldre 2006-04-25, 08:33   #5
SoulGod
Medlem
 
Registrerad: 2005-08-20
Ort: Linköping
Inlägg: 1 363
Lösningar: 1
Ah... jag vet inte, alltså, jag vill att detta id skall fixas "samtidigt" som jag lägger in infon första gången i databasen så att säga..

xx skall alltså vara (81xx) , skall bli 8101 , och nästa blir 8102 o.s.v.
__________________
//Martin aka SoulGod
Only the future, can tell u about ur past!
SoulGod besöker inte forumet just nu   Svara med citat
Äldre 2006-04-25, 08:54   #6
J.N.
Medlem
 
J.N.s avatar
 
Registrerad: 2003-04-02
Ort: Lund
Inlägg: 1 660
Lösningar: 64
HEJ!

För att få rätt slutsiffra, hämta ur databasen vilken som är högst av 81xx/85xx/89xx. Lägg därefter till ett.
(...MAX id WHERE id>8200)

Vad händer när du kommer till 8199? Eller "det ska inte hända"?
__________________
Johnny

wF-råd:
- är ditt inlägg förståeligt?
- korrekturläs ditt inlägg, redigera stavfel
- kom ihåg att markera det inlägg som löste problemet
J.N. besöker inte forumet just nu   Svara med citat
Äldre 2006-04-25, 08:59   #7
SoulGod
Medlem
 
Registrerad: 2005-08-20
Ort: Linköping
Inlägg: 1 363
Lösningar: 1
Det kommer aldrig hända, eftersom vi ej har så många anställda.
Men hur gör jag nu, för att ens "skapa" idét från början då?
__________________
//Martin aka SoulGod
Only the future, can tell u about ur past!
SoulGod besöker inte forumet just nu   Svara med citat
Äldre 2006-04-25, 16:31   #8
J.N.
Medlem
 
J.N.s avatar
 
Registrerad: 2003-04-02
Ort: Lund
Inlägg: 1 660
Lösningar: 64
HEJ!

Med fortsättning på Jesper T:s kod, och hoppas det var det du undrade om:

Kod:
Function getInt(value)
    Select Case value
    Case "chef"
        'intPos = 81 denna lär väl inte behövas längre?
        str_sqldel = " id<8200"
        ...
    End Select
    getInt = intPos
End Function

pos = getInt(request("pos"))

Set RSmax = Connect.Execute("SELECT MAX id FROM tbl WHERE" & str_sqldel)
str_maxid = RSmax("id") + 1

Connect.Execute("INSERT INTO anstallda (namn,pos...) VALUES('"& namn &"',"& str_maxid &"...)")
__________________
Johnny

wF-råd:
- är ditt inlägg förståeligt?
- korrekturläs ditt inlägg, redigera stavfel
- kom ihåg att markera det inlägg som löste problemet
J.N. besöker inte forumet just nu   Svara med citat
Svar
webForum > Utveckling > Webbutveckling > ASP

Trådverktyg
Visningsalternativ

Forumregler
Du får inte posta nya trådar
Du får inte posta svar
Du får inte bifoga filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är av
HTML-kod är av

Forumhopp


Alla tider är i GMT +1. Klockan är nu 07:06.


Powered by: vBulletin Version 3.8.6
Copyright © webForum