Toon posts:

[asp] Euro teken en €

Pagina: 1
Acties:
  • 143 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hallo,

Ik merk dat wanneer ik de volgende html code opsla en een MS SQL database met vbscript:

code:
1
€

maar ook
code:
1
 > en &

dat hij deze automatisch ombouwt tot het eurotekentje zelf, dus hij maakt er € van.

Hoe komt dit en hoe kom ik hier nou vanaf want dit wil ik niet :)

Iemand die dit ook heeft gemerkt?

Alvast bedankt!

  • Korben
  • Registratie: Januari 2001
  • Laatst online: 14-11-2025

Korben

() => {};

Dan sla je toch gewoon
code:
1
€
op? :) Sim-pel.

[ Voor 17% gewijzigd door Korben op 19-02-2004 02:01 ]

.oisyn: Échte programmeurs haten PHP met een passie. Ben jij soms geen echte programmeur?


Verwijderd

Topicstarter
Ja, maar dan moet ik al die symbolen replacen... Weet niet eens welke dat allemaal zijn.

Waarom zou alles niet gewoon normaal in de database kunnen?

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 01:00

.oisyn

Moderator Devschuur®

Demotivational Speaker

Is het echt de database, of is het vbscript die die dingen bij het parsen van je script al omzet?

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


  • JJvG
  • Registratie: Juli 2003
  • Laatst online: 27-04 16:49
Je database maakt er volgens mij niet automatisch een euro-teken van, maar bij het weergeven van je pagina wordt het door de browser automatisch ge-interpeteerd omdat het een standaard HTML-code is voor een euro teken.

Als je wilt dat je precies ziet wat er in je database staat (dus inclusief speciale karakters), moet je de functie Server.HTMLEncode gebruiken.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

Als je wilt dat je precies ziet wat er in je database staat (dus inclusief speciale karakters), moet je de functie Server.HTMLEncode gebruiken.
Normaliter hoort een database niet op eigen 'initiatief' HTMLEncoding toe te staan? Wat heeft Server.HTMLEncode er dan mee te maken?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • JJvG
  • Registratie: Juli 2003
  • Laatst online: 27-04 16:49
gorgi_19 schreef op 19 februari 2004 @ 09:28:
[...]

Normaliter hoort een database niet op eigen 'initiatief' HTMLEncoding toe te staan? Wat heeft Server.HTMLEncode er dan mee te maken?
Volgens mij is het probleem niet zozeer de database, want ik geloof direct dat daar een stringetje in staat als "€"

Volgens mij ligt het probleem dus aan de asp-kant. Als je iets doet als:

response.write rs.Fields("veldnaampje-met-euro-resultaat").value

...komt er in je HTML netjes € te staan, wat door de browser wordt geparsed als een euro teken. Als je nou precies wilt zien wat er in je database staat moet je in ASP de functie Server.HTMLEncode gebruiken, zodat het resultaat van de server wordt omgezet en de speciale karakters worden vervangen. Je resultaat is dan:

&€ en je weergave in je browser is dan dus € en niet het euro-teken.

[ Voor 15% gewijzigd door JJvG op 19-02-2004 09:37 ]


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

€ en je weergave in je browser is dan dus € en niet het euro-teken.
Een betere oplossing om te kijken wat er nu precies gebeurd en of het geen 'browser' probleem is, is dan volgens mij om te kijken in de source. Deze laatste geeft dan de meest 'ruwe' versie weer.

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
Maar waarom wil je een € teken in de database plaatsen dan? Die kan je er toch bij zetten als je de gegevens naar het scherm schrijft.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

Phenomenon schreef op 19 februari 2004 @ 09:57:
Maar waarom wil je een € teken in de database plaatsen dan? Die kan je er toch bij zetten als je de gegevens naar het scherm schrijft.
Ik kan me voorstellen dat je bij bepaalde omstandigheden, zoals een prijs noemen in een tekst, geen willekeurige formatting wil hebben... ;)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
gorgi_19 schreef op 19 februari 2004 @ 10:00:
[...]

Ik kan me voorstellen dat je bij bepaalde omstandigheden, zoals een prijs noemen in een tekst, geen willekeurige formatting wil hebben... ;)
Jah maar dat pak ik altijd in me code :)
code:
1
Reponse.Write("€" & FormatNumber(Rst("valuta"), 1......))


Zoiets :)

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

Waarom gebruik je dan geen FormatCurrency?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
Die bestaat niet in asp dacht ik zo.

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 22:24

gorgi_19

Kruimeltjes zijn weer op :9

Phenomenon schreef op 19 februari 2004 @ 12:43:
Die bestaat niet in asp dacht ik zo.
Welke versie draai jij dan?

http://www.aspnl.com/aspnl/nl/artikelen/uselocale.asp

Digitaal onderwijsmateriaal, leermateriaal voor hbo


  • Phenomenon
  • Registratie: December 2000
  • Laatst online: 01-04 13:18
Oooh wel dus :o Nou jah dan die manier die jij zegt maar :D

Maar het ging ook meer om het idee, dat ik hem niet in de database opsla.

Verwijderd

Topicstarter
Ik snap ook niet waarom het een probleem is, maar ik krijg het als "bug" opgegeven :)

Verder toont hij het teken in een <input> veld. Dit heeft dus niets met de browser te maken.

code:
1
2
3
4
5
6
<form action="test.asp" method="post">
<textarea cols="" rows="" name=txrt>
&euro;
</textarea>
<input type="submit">
</form>


Dit werkt nog wel. Maar als ik dit formulier Submit, dan maakt hij er het euroteken van ipv & e u r o ;

En server.htmlEncode kan ook niet want er zit ook echt HTML in het veld dat WEL als html geinterpreteerd moet worden :)

[ Voor 70% gewijzigd door Verwijderd op 19-02-2004 13:03 ]


Verwijderd

Topicstarter
Phenomenon schreef op 19 februari 2004 @ 09:57:
Maar waarom wil je een € teken in de database plaatsen dan? Die kan je er toch bij zetten als je de gegevens naar het scherm schrijft.
Het gaat om een cms waar men gewoon een tekstveld heeft, en dus ergens neerzet: Dit kost € 100 ,- blabla :)
Pagina: 1