Avatar billede jlk Nybegynder
14. juni 2000 - 22:22 Der er 47 kommentarer og
2 løsninger

Tjekke om nummer findes ?

Jeg har en side man kan oprette en kunde på - men man skal indtaste et kundenummer - hvordan tjekker jeg om det nummer findes i databasen inden jeg går videre til min save-side ???

Gerne et lille eksempel :-)
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:26 #1
Nummer = Request("kundenummer")

SQL = "SELECT Kundenummer FROM Tabel WHERE Kundenummer = " & Nummer & ""

Conn.Execute(SQL)

If RS.EOF OR RS.BOF THEN

' Så findes kundenummeret ikke!

Else

Response.Write "Kundenummeret eksisterer allerede!"

End If
Avatar billede lp Nybegynder
14. juni 2000 - 22:26 #2
ehhh, altså en smart simpel måde kunne være sådan:

SQL="SELECT telefonnummer from din_tabel where telefonnummer="&Request("telefonnummer")
Set rs=din_connection.Execute(SQL)

If rs.EoF Then

Så går vi videre........

Else

Response.Write "Nummeret findes allerede"
End If

Det var en af mange måder!
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:27 #3
Nummer = Request("kundenummer")

SQL = "SELECT Kundenummer FROM Tabel WHERE Kundenummer = " & Nummer & ""

Conn.Execute(SQL)

If RS.EOF OR RS.BOF THEN

Response.Redirect("save.asp")

Else

Response.Write "Kundenummeret eksisterer allerede!"

End If

Sådan skulle det være :)
Avatar billede lp Nybegynder
14. juni 2000 - 22:28 #4
ehhh, phylox2, skal du ikke have en rs med nogen steder, jeg tror den giver fejl.....:-)
Avatar billede jlk Nybegynder
14. juni 2000 - 22:29 #5
Ja - men kan jeg ikke gøre det efter tryk på submit - altså inden jeg ryger om på savesiden ??
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:30 #6
Nummer = Request("kundenummer")

SQL = "SELECT Kundenummer FROM Tabel WHERE Kundenummer = " & Nummer & ""

Set RS = Conn.Execute(SQL)

If RS.EOF OR RS.BOF THEN

Response.Redirect("save.asp")

Else

Response.Write "Kundenummeret eksisterer allerede!"

End If

Jo jo :)
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:31 #7
joh ... din form henviser til den side jeg har lavet ... den checker så, om det eksisterer, hvis ikke, så over på save.asp ellers så skriver den det!
Avatar billede lp Nybegynder
14. juni 2000 - 22:32 #8
jeg jeg kunne også lave en response.redirect, men det ville ikke virke..............så det skal du IKKE gøre.....

Ved at response.redirect mister du alle de resterende formdata fra den forrige side og det kan du jo ikke bruge til noget.........derfor skal du altså ikke redirecte, men blot redirecte tilbage til siden hvor data indtastes eller udskrive en fejl ved hjælp af response.write hvis nummeret findes.......hvis det ikke findes kan den jo ligeså godt fortsætte i dokumentet og gemme dataene...

phylox2, det ved du da også, hvorfor svarer du så hurtigt, når du ved at han om en time så skriver ehhhh, det første virkede men nu vil den ikke gemme..........prøv dog at lave et ordentligt svar til spørgsmålstilleren og giv dig lidt bedre tid.......

/LP
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:34 #9
Hvad mener du ?!

Det virker da fint med redirect!
Avatar billede lp Nybegynder
14. juni 2000 - 22:36 #10
der er trods alt 100 point ik!!!

du kan ikke tjekke det før....medmindre du laver en helt side før den side man indtaster data i, hvor du beder om at indtaste telefonnummer, derefter kan du udskrive en "fejl" som jo sikrer at brugeren ikke bruger 29 min på at udfylde felterne hvorefter han får at vide at han er oprettet, det må jo være det der er pointen.........og selvfølelig også får at undgå irriterrende double records i basen!

/Lp
Avatar billede lp Nybegynder
14. juni 2000 - 22:37 #11
phylox2>> nahh, det tror jeg ikke du skal regne med!
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:38 #12
nååååååhh ....

Det er PRÆCIST det jeg gør .... !!! Laver en check.asp side INDEN man kommer til save.asp
Avatar billede jlk Nybegynder
14. juni 2000 - 22:44 #13
:-)......ja, nu er jeg sg da forvirret.

lp>>....du skriver at jeg mister mine data ved at redirecte.....men samtidig siger du jeg skal redericte til den side jeg kom fra...mener du UDEN at miste mine data?? - og hvordan ?
Avatar billede lp Nybegynder
14. juni 2000 - 22:45 #14
nej nej nej, for du har 3 sider impliceret her.....

1. side: brugeren indtaster en fandens masse data
2. side: tjekker om nummer findes
3. side: gemmer data, hvis nummer ikke findes

MEN

når brugeren indtaster syvogtyve informationer på første side og kommer til side 2 bliver han smidt videre til side 3 og når han når dertil, er de data han indtastede på side 1 tabt!!!!!! BASTA!!
Avatar billede lp Nybegynder
14. juni 2000 - 22:46 #15
hvorfor prøver i ikke bare selv?
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:46 #16
Du lægger de input fra formen op i sessions

Session("kundenummer") = Request("kundenummer")

osv. osv.

Så sætter du session, værdierne ind på save.asp siden ....

Hvis du har noget kode, kan jeg rette det til for dig :)))
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:48 #17
lp >>

Så kan man, på input siden, lave en funktion

If Session("kundenummer") = "" Then
Response.Write "<input type='text'>"
Else
Response.Write "<input type='text' value='" & Session("kundenummer") & "'>"
End If

SÅ mister man ikke dataene !
Avatar billede jlk Nybegynder
14. juni 2000 - 22:50 #18
lp>>...troede bare du havde en løsning på det, var kun interesseret :-)
Avatar billede lp Nybegynder
14. juni 2000 - 22:50 #19
HA HA HA HA................så trækker vi i land.............den kom først nu ikke.........jeg synes ikke jeg har set dig nævne at han skulle bruge sessions tidligere, eller skal jeg bare have briller??

Og NEJ du skal heller IKKE ligge i sessions, for så ender det bare med at du har "gamle" data der, hvis en kunde fx. opdaterer nummeret, så skal du jo også kode en masse som gør at den bliver opdateret....og det skal du gøre overalt..............

brug nu bare min version, sessions bruges når man gerne vil lave smarte ting som man kan "trække" med brugeren rundt....


/LP
Avatar billede lp Nybegynder
14. juni 2000 - 22:53 #20
og nej, jeg er ikke en sur måtte, men synes jeg efterhånden jeg aner en smule dårlig kvalitet af de svar der bliver givet.....og meningen er jo at man skal hjælpe hinanden til at lære, men man lærer ikke meget hvis de som skriver svar ikke svarer ordentligt og "bare" nøjes med at lave det simpleste for at komme først fordi det tit er lig med point!

/LP
Avatar billede jlk Nybegynder
14. juni 2000 - 22:54 #21
så så - rolig i to :-)
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:54 #22
Jep .. og det er jo det man skal her, hvis man gerne lige vil checke brugerens kundenummer

Ellers kan man jo lave sådan en her!

Function Check(value)
value = Request("kundenummer")
SQL = "SELECT Kundenummer FROM Tabel WHERE Kundenummer = " & value & ""
Set RS = Conn.Execute(SQL)
IF RS.EOF Or RS.EOF Then
strERR = ""
Else
strERR = "Kundenummer eksisterer allerede!"
End If
End If

If strErr = "" Then
Response.Redirect("save.asp")
Else
Response.Write strERR
End If
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:55 #23
Det er jo ikke mig, der kommer brasende og skriger op, vel ?! :)
Avatar billede lp Nybegynder
14. juni 2000 - 22:55 #24
men det løser stadig ikke problematikken om tabte data!!!
Avatar billede phylox2 Nybegynder
14. juni 2000 - 22:57 #25
Hvad for tabte data ???

<form OnSubmit="Check();">
Avatar billede lp Nybegynder
14. juni 2000 - 22:57 #26
det gør jeg heller ikke, jeg prøver bare at forklare dig at dine svar ikke altdig ligger på et ret højt niveua......
Avatar billede lp Nybegynder
14. juni 2000 - 22:58 #27
check hvad?

du kan ikke begynde at tilføre javascript her.....desuden kan det jo heller ikke køres uden update.....

nej, vel......
Avatar billede jlk Nybegynder
14. juni 2000 - 22:59 #28
phylox2>>nope :-)

Hmmm....måske jeg kunne bruge den alligevel!!

Kan jeg ikke kopiere min formside som mellemled og starte med at tjekke om nummeret findes - og hvis det gør så udfylde felterne igen og hvis ikke så gå til savesiden ??....
Avatar billede lp Nybegynder
14. juni 2000 - 23:00 #29
prøv at fjerne fingrene fra tastaturet og læs lidt af det jeg har skrevet her, lav evt. 3 sider udfra dine svar og se om du kan få noget som helst til at virke!
Avatar billede phylox2 Nybegynder
14. juni 2000 - 23:00 #30
Nååå Hr. Dommer .... det er så bare underligt, at alle andre jeg har hjulpet ikke er så blæste, at de brokker sig over dem ...

jlk >> Jeg gíder ikke bruge mere tid på dette spørgsmål HER på eksperten .. hvis du dog gerne vil høre mere / have hjælp, så skriv til min e-mail ..... man har vel værdighed
Avatar billede lp Nybegynder
14. juni 2000 - 23:01 #31
hvad er problemet jlk?

har jeg ikke lavet løsningen, hvorfor skal du absolut redirecte?
Avatar billede jlk Nybegynder
14. juni 2000 - 23:02 #32
phylox2>>takker :-)
Avatar billede lp Nybegynder
14. juni 2000 - 23:03 #33
he he, ellers også har man bare ikke overskud nok til at indrømme at man har taget fejl og selv evt. prøve at lære fremfor at stå på sin (u)ret....
Avatar billede lp Nybegynder
14. juni 2000 - 23:04 #34
hvorfor sætter du ikke bare den simple kode ind i save dokumentet og derved sparer du ovenikøbet et asp dokument, jubiii!!!
Avatar billede jlk Nybegynder
14. juni 2000 - 23:06 #35
lp>>...sorry...er ikke helt med :-)
Avatar billede lp Nybegynder
14. juni 2000 - 23:10 #36
paste lige dit her på siden, så skal jeg sætte den kode ind som sikrer at den tjekker det!
Avatar billede lp Nybegynder
14. juni 2000 - 23:11 #37
altså den side som gemmer :-)
typo igen, sorry!
Avatar billede jlk Nybegynder
14. juni 2000 - 23:14 #38
nej - har godt forstået det med at tjekke den - men er ikke vild med at den bare skriver at det findes - så skal brugeren jo indtaste igen - eller hvad ??
Avatar billede lp Nybegynder
14. juni 2000 - 23:16 #39
det kan laves på mange måder, men hvad ønsker du der skal ske hvis nummeret findes?
Avatar billede jlk Nybegynder
14. juni 2000 - 23:18 #40
Vil jo gerne have at de så skal indtaste et nyt og ikke skrive det hele om igen :-)
Avatar billede lp Nybegynder
14. juni 2000 - 23:21 #41
ehhhh, jamen så smid lige siden her hurtigt så må jeg lige se om jeg kan fikse noget!

hvad med den med at lave en side helt først hvor man skal indtaste sit nummer hvorefter man kommer videre til siden med dataindtastning hvis det ikke findes, ellers får man en fejlbesked på den samme side med mulighed for at indtaste et nyt nummer som så bliver tjekket.....
Avatar billede lp Nybegynder
14. juni 2000 - 23:22 #42
hvis der er noget med et password eller et brugernavn man skal indtaste kunne det jo gøres på den første side, det gør man mange steder i dag........altså hvor man først skal indtaste et par informationer før man kommer videre...
Avatar billede jlk Nybegynder
14. juni 2000 - 23:24 #43
Ja, tror jeg køber den - har en masse selectboxe den henter fra databasen på formsiden - så det bliver alt forlangsomt hvis man skal ind til den igen :-)
Avatar billede lp Nybegynder
14. juni 2000 - 23:25 #44
nemlig.......det er også den bedste medtode efter min mening!
Avatar billede jlk Nybegynder
14. juni 2000 - 23:27 #45
puhaaa...men det var nu det mindste problem....skal ha' delt dataerne ud på flere records :-(
Avatar billede lp Nybegynder
14. juni 2000 - 23:29 #46
ikke forstået, hvad mener du?
Avatar billede jlk Nybegynder
14. juni 2000 - 23:30 #47
I fik lige 100 point hver - så er alle glade :-)
Avatar billede jlk Nybegynder
14. juni 2000 - 23:32 #48
lp>>

Jeg skal ha' delt nogle numre ud på flere records fra denne formside - men opretter et ny spørgsmål - når jeg kan beskrive det ordentligt :-)
Avatar billede lp Nybegynder
14. juni 2000 - 23:33 #49
ok.....:-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester