Avatar billede gobo Nybegynder
22. november 2000 - 19:43 Der er 16 kommentarer og
1 løsning

Det _må_ kunne gøres nemmer!

Hejsa,

Jeg har et lille trivielt problem, som jeg håber kan gøres noget nemmere...

For at undgå \'-bugen, så bruger jeg

Feltnavn1 = Replace(Feltnavn1, \"\'\", \"'\")
Feltnavn2 = Replace(Feltnavn2, \"\'\", \"'\")
Feltnavn3 = Replace(Feltnavn3, \"\'\", \"'\")
...

Men når man nu har adsk. 100 felter, kan man så ikke på en eller anden måde gøre så sker automatisk i alle felterne?

Det er lidt træls at skulle side og skrive så mange linjer for at lave en så simpel ting!
Avatar billede stigc Nybegynder
22. november 2000 - 19:48 #1
lav en funktion:

<%

Function CleanString(n)

    n = Replace(n, \"\'\", \"´\")
    n = Replace(n, chr(34), \"´\")   
CleanString = n

End function

%>

bruges sådan:

sBrugernavn= CleanString(request(\"brugernavn\"))
Avatar billede gobo Nybegynder
22. november 2000 - 19:57 #2
Hvor kommer det der brugernavn ind i billedet?
Avatar billede netsrac Praktikant
22. november 2000 - 19:59 #3
Ja eller...

For each item in request.form
item = Replace(request(item), \"\'\", \"&#39;\")
next
Avatar billede stigc Nybegynder
22. november 2000 - 20:04 #4
det var bare et eksemple på brug af den, ved request af en formvariable!
Avatar billede gobo Nybegynder
22. november 2000 - 20:14 #5
netsrac -> det virker ikke :( Jeg får stadig en syntax error, når jeg skriver et \' i et af felterne.
Avatar billede netsrac Praktikant
22. november 2000 - 20:17 #6
Det er felter fra en form ikke ?
Avatar billede gobo Nybegynder
22. november 2000 - 20:30 #7
Yep, adsk. felter, der føres over i en ny side, hvor de smides ind med UPDATE DISTINCTROW xxxx SET ... WHERE Id= \" & Request(\"Id\")
Avatar billede netsrac Praktikant
22. november 2000 - 20:33 #8
Så smid dem i en session og hent dem der

For each item in request.form
session(item) = Replace(request.form(item), \"\'\", \"&#39;\")
next

Så hvis du har lavet en
<input type=\"text\" name=\"TEST\">

Så henter du den med
session(\"test\")

Avatar billede gobo Nybegynder
22. november 2000 - 20:42 #9
Men det minimere jo ikke mit tastearbejde, så skal jeg jo til at hente sessions.....
Avatar billede netsrac Praktikant
22. november 2000 - 20:46 #10
Nej da du Skriver da bare din sql med sessions istedet for variabler..

UPDATE DISTINCTROW tabel SET test = \" & session(\"test\") & \" WHERE Id= \" & Request(\"Id\")
Avatar billede gobo Nybegynder
22. november 2000 - 21:20 #11
Du vil have at jeg skal smide dem ind i en session, og så bruge sessionen i sql\'en, det lyder spændende, jeg har ALDRIG kunne fået session og SQL til at arbejde ordentligt sammen, hvordan smider du dem ind så SQL\'en kan bruge dem???
Avatar billede netsrac Praktikant
22. november 2000 - 21:25 #12
Altså hvis du gør det med variabler gør du sådan her ikke ? :

SQL = \"UPDATE DISTINCTROW tabel SET test = \" & test & \" WHERE Id= \" & Request(\"Id\")

Hvis du skal gøre det med session gør du sådan her

SQL = \"UPDATE DISTINCTROW tabel SET test = \" & session(\"test\") & \" WHERE Id= \" & Request(\"Id\")
Avatar billede gobo Nybegynder
22. november 2000 - 21:45 #13
Det er jeg godt klar over, men hvordan fører du dataerne fra formen ind i en session? Jeg er totalt newbie til det her asp-sjov, jeg ville hellere ha\' en apache og php, det ved man da hvad er! :)
Avatar billede netsrac Praktikant
22. november 2000 - 21:56 #14
Sådan her bliver alle felterne fra formen lagt ind i session med samme navn som felterne har.

For each item in request.form
session(item) = Replace(request.form(item), \"\'\", \"&#39;\")
next

F.eks. bliver <input type=\"text\" name=\"TEST\">
til session(\"TEST\") og <input type=\"text\" name=\"TEST2\"> bliver til session(\"TEST2\")
Avatar billede lthrane Nybegynder
22. november 2000 - 22:08 #15
Hvad er &#39; - er det en repræsentation af \' ?
Avatar billede sone Nybegynder
23. november 2000 - 08:15 #16
Jeg forstår ikke hvor \"man\" bruger &#39; for \' - hvorfor ikke sende 2 x \' til databasen, så der kommer til at stå ét \' i DB.

Hvad vil I gøre den dag man skal sende en mail med teksten, ellers skrive en fil - så har I ikke \' - men &#39;
Avatar billede lthrane Nybegynder
23. november 2000 - 08:26 #17
Man kan anvende

escape(strInput)

inden man sætter ind i db, og

unescape(strFormDB)

når man har hentet fra db. Så er det ikke kun \' der håndteres.

lthrane
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