WN

WN (https://www.wn.se/forum/index.php)
-   Klientsidans teknologier, design och grafik (https://www.wn.se/forum/forumdisplay.php?f=12)
-   -   ASP - problem med replace och SQL (https://www.wn.se/forum/showthread.php?t=4338)

mypay 2004-11-06 14:32

Har en sjukt lång SQL (genereras av ASP kod) som ska köras..

insert into biosite_ProductAttributes (productID, attributeID, content) values (2222,1,'SIGNAL TRANSDUCTION/TRANSCRIPTION FACTORS') ,(2222,2,'Phospho-Specific Antibodies') ,(2222,3,'Anti-Phospho-S6 Kinase (Thr389/Thr412), polyclonal') ,(2222,4,'JM-3505-100') ,(2222,8,'affinity purified') ,(2222,9,'100 µg') ,(2222,18,'human, mouse, rat') ,(2222,20,'polyclonal') ,(2222,21,'rabbit') ,(2222,23,'The antibody detects p70 S6 kinase only when phosphorylated at Thr389, and detects p85 S6 kinase only when phosphorylated at the analogous site (Thr412).') ,(2222,24,'A ten residue synthetic peptide corresponding to amino acids 355–364 (FTSR[pT]PRDSP) of rat Rsk 1 (MAPKAP-K1a). The sequence is fully conserved in mouse Rsk 1.') ,(2222,28,'WB') ,(2222,29,'Western blotting (1-2 µg/ml)') ,(2222,31,'0,5 mg/ml') ,(2222,32,'PBS, pH 7.2, containing50% glycerol, 1% BSA,') ,(2222,37,'Storethe antibody at -20°C. For long-term storage, aliquot and freeze at -70°C. Avoid freeze/thaw cycles.') ,(2222,39,'0,02 % sodium azide') ,(2222,42,'Pullen N. and Thomas, G. (1997) FEBS Lett. 410:78-82') ,(2222,43,'0') ,(2222,44,'0') ,(2222,45,'0') ,(2222,46,'0') ,(2222,49,'510') ,(2222,50,'0') ,(2222,53,'MBL') ,(2222,55,'p70 S6 kinase is a mitogen activated Ser/Thr protein kinase that is required for cell growth and G1 cell cycle progression. P70 S6 kinase phosphorylates the S6 protein of the 40S ribosomal subunit and is involved in translational control of 5'-oligopyrimidine tract mRNAs. A second isoform, p85 S6 kinase, is derived from the same gene and is identical to p70 S6 kinase except for 23 extra residues at the N-terminus that encode a nuclear localizing signal')

Notera den feta texten.. ' tecknet sabbar min kod lite..
Jag har den här kodsnutten som genererar SQL strängen

if AttributeSQL <> "" then AttributeSQL = AttributeSQL & " ,"
AttributeSQL = AttributeSQL & "(" & ProductNumber & "," & session(lastAttribute) & ",'" & replace(item.value, "'", "''") & "')"


och sen en bit ner i koden kör jag

sql = "insert into ProductAttributes (productID, attributeID, content) values " & AttributeSQL
AttributeSQL = ""
conn2.execute(sql)


Frågan är nu - varför plockas inte ' tecknet ut mot två st ' för?
(ignorera att koden kanske är klumpig - den ska bara köras en enda gång och kommer raderas för tid och evighet så fort den har gjort det den ska - vilket den kommer göra när jag fått detta att funka)

Robert 2004-11-06 15:18

För att stilla paranoian, har du kopierat " ' "-tecknet ifrån texten "5'-oligopyrimidine" så att du är 100% säker på att det är samma tecken? (ja, jag vet, paranoia, men man vet aldrig)

Och nästa grejj; är du säker på att det verkligen är ett " ' " tecken där? testa att debugga item.value via en javascript-alert så du slipper all html-encoding utifall teckenet skulle vara en av typen &xx; eller dylikt (eller ta view source på htmlkoden av debuggen såklart)

mypay 2004-11-06 16:12

Ja det är ett ' tecken där.. Jag kör response.contenttype = "text/plain" när jag debugkör det hela.. dvs inget kommer ut som HTML kod

Robert 2004-11-06 17:54

Och om du replacear till ett annat tecken, fungerar det då?

mypay 2004-11-06 18:11

Jag har provat att köra replace mot ' och mot ` samt mot ingenting alls ("")

matlin 2004-11-12 11:31

Å jag som trodde att en SQL escape så ut såhär " \' " ... fåniga mig då ....

esset 2004-11-12 14:56

Tar du datan från en databas eller kommer du åt den?

Gå in och ändra ' mot ` istället. Enklast, om det nu är ' som stör.

' + asp = bad idea .... i text

***

Offtopic: Jobbar du åt BioSite? :)

mypay 2004-11-12 14:59

problemet är löst (jag plockade bort den j**** posten ur databasen)

OT: tja.. uhm.. ehh.. inte direkt nej :)


Alla tider är GMT +2. Klockan är nu 02:14.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson