Avatar billede andersasp Nybegynder
13. april 2007 - 11:35 Der er 8 kommentarer og
1 løsning

Problem med UTF-8

Hejsa,

Jeg laver et XML domument med følgende kode. Men når jeg kommer til æøå kommer den dog med fejl??? hvordan kan jeg fixe det??

-------------------------------------------------------

set findallproductsxml = Connxml.Execute("SELECT * FROM produkter WHERE Plagerstatus > 0 AND Pshowstatus = 'active'")

writethisxml = "<?xml version='1.0' encoding='utf-8'?>" & vbcrlf  & vbTab
writethisxml = writethisxml & "<data>" & vbcrlf

do while not findallproductsxml.eof
writethisxml = writethisxml & "<ads>" & vbcrlf
writethisxml = writethisxml & "<headline>"&findallproductsxml("Poverskrift")&"</headline>" & vbcrlf
writethisxml = writethisxml & "<description>"&findallproductsxml("Pbeskrivelse")&"</description>" & vbcrlf
writethisxml = writethisxml & "<price>"&findallproductsxml("Ppris")&"</price>" & vbcrlf

set findallcategory = Connxml.Execute("SELECT * FROM produktkategori WHERE PKID = "&findallproductsxml("Pnogle")&"")
writethisxml = writethisxml & "<category>"&findallcategory("PKoverskrift")&"</category>" & vbcrlf
findallcategory.close

writethisxml = writethisxml & "<url>uniqueproduct.asp?PID="&findallproductsxml("PID")&"</url>" & vbcrlf
writethisxml = writethisxml & "<productid>"&findallproductsxml("PID")&"</productid>" & vbcrlf
writethisxml = writethisxml & "<postcode>4400</postcode>" & vbcrlf
writethisxml = writethisxml & "<date_modified>"&now()&"</date_modified>" & vbcrlf
writethisxml = writethisxml & "<usednew>N</usednew>" & vbcrlf
writethisxml = writethisxml & "<picurl>upload/butik/"&findallproductsxml("Pbillede")&"</picurl>" & vbcrlf
writethisxml = writethisxml & "</ads>" & vbcrlf
    findallproductsxml.MoveNext
loop
writethisxml = writethisxml & "</data>"


dim fs,tfile
set fs=Server.CreateObject("Scripting.FileSystemObject")
set tfile=fs.CreateTextFile("d:\web\web.dk\www\xmlfindalt.xml")
tfile.WriteLine(""&writethisxml&"")
tfile.close
set tfile=nothing
Avatar billede tjgrindsted Nybegynder
13. april 2007 - 11:57 #1
prøv med

<?xml version="1.0" encoding="ISO-8859-1"?>
Avatar billede tjgrindsted Nybegynder
13. april 2007 - 11:59 #2
eller lav en Meta i din header som denne

content-type application/xhtml+xml; charset=ISO-8859-1
Avatar billede andersasp Nybegynder
27. april 2007 - 11:53 #3
Hejsa tj grindsted, tak for hjælpen.. jeg beklager jeg ikke lige har vendt tilbage noget før..

Når jeg laver dit eks. får jeg nu denne fejl??

Reference to undefined entity 'oslash'. Error processing resource 'file:///E:/Arbejde/Kunder/I hus/Intersport KBH/dynamisk ...

Jeg har prøvet at fixe et således med det virker ikke:(

writethisheadline    = findallproductsxml("Poverskrift")
writethisheadline    = replace(writethisheadline, "aelig", "&#xE6;")
writethisheadline    = replace(writethisheadline, "oslash", "&#xF8;")
writethisheadline    = replace(writethisheadline, "aring", "&#xE5;")
writethisheadline    = replace(writethisheadline, "AElig", "&#xC6;")
writethisheadline    = replace(writethisheadline, "Oslash", "&#xD8;")
writethisheadline    = replace(writethisheadline, "Aring", "&#xC5;")
writethisxml = writethisxml &  writethisheadline
Avatar billede tjgrindsted Nybegynder
27. april 2007 - 12:41 #4
hedder det ikke
aelig;
oslash;
aring;
AElig;
Oslash;
Aring;
Avatar billede tjgrindsted Nybegynder
27. april 2007 - 12:47 #5
tag lige et kig her så er ud udeover det du er ved idet at de tegn er defineret i starten af XML siden

http://gandalf.aksis.uib.no/~tone/forelesninger/HUIN205/1gang.page
Avatar billede andersasp Nybegynder
27. april 2007 - 15:11 #6
Nu har jeg ændret det men den melder stadig fejl: ?? jeg er desværre helt blank her i xml :(

A name was started with an invalid character. Error processing resource
<description>Funktionelt og svedtransporterende l&&#xF8;bes&&#xE6;t i 100 % dry-plus polyester. Vind- ...



<meta content-type application/xhtml+xml; charset=ISO-8859-1>
<%
Set Connxml = Server.CreateObject("ADODB.Connection")
    Connxml.Open MM_webdatabase_STRING


set findallproductsxml = Connxml.Execute("SELECT * FROM produkter WHERE Plagerstatus > 0 AND Pshowstatus = 'active'")

writethisxml = "<?xml version='1.0' encoding='ISO-8859-1'?>" & vbcrlf  & vbTab
writethisxml = writethisxml & "<data>" & vbcrlf

do while not findallproductsxml.eof
writethisxml = writethisxml & "<ads>" & vbcrlf
writethisxml = writethisxml & "<headline>"

writethisheadline    = findallproductsxml("Poverskrift")
writethisheadline    = replace(writethisheadline, "aelig;", "&#xE6;")
writethisheadline    = replace(writethisheadline, "oslash;", "&#xF8;")
writethisheadline    = replace(writethisheadline, "aring;", "&#xE5;")
writethisheadline    = replace(writethisheadline, "AElig;", "&#xC6;")
writethisheadline    = replace(writethisheadline, "Oslash;", "&#xD8;")
writethisheadline    = replace(writethisheadline, "Aring;", "&#xC5;")
writethisxml = writethisxml &  writethisheadline

writethisxml = writethisxml &  "</headline>" & vbcrlf
writethisxml = writethisxml & "<description>"

writethisdescription    = findallproductsxml("Pbeskrivelse")
writethisdescription    = replace(writethisdescription, "aelig;", "&#xE6;")
writethisdescription    = replace(writethisdescription, "oslash;", "&#xF8;")
writethisdescription    = replace(writethisdescription, "aring;", "&#xE5;")
writethisdescription    = replace(writethisdescription, "AElig;", "&#xC6;")
writethisdescription    = replace(writethisdescription, "Oslash;", "&#xD8;")
writethisdescription    = replace(writethisdescription, "Aring;", "&#xC5;")
writethisxml = writethisxml &  writethisdescription

writethisxml = writethisxml &  "</description>" & vbcrlf
Avatar billede olebole Juniormester
27. april 2007 - 15:18 #7
<ole>

De pågældende HTML-entities hedder:
    &aelig;
    &oslash;
    &aring;
    &AElig;
    &Oslash;
    &Aring;

- så det må vel være noget i stil med:
    writethisdescription    = replace(writethisdescription, "&aelig;", "&#xE6;")

/mvh
</bole>
Avatar billede olebole Juniormester
27. april 2007 - 15:20 #8
- eller:
    writethisdescription    = replace(writethisdescription, "aelig;", "#xE6;")

- eller:
    writethisdescription    = replace(writethisdescription, "aelig", "#xE6")

- men så ryger logikken lidt (efter min mening)  =)
Avatar billede andersasp Nybegynder
27. april 2007 - 15:36 #9
Ok så er jeg kommet det længere :)

Men, nu brokker den sig over et andet tegn

Reference to undefined entity 'nbsp'. ???
<description><p>Gummi &quot;tr&#xE6;sko&quot; model Clogs. Popul&#xE6;r og milj&#xF8;venlig ...
class="m">>
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