Problemas con caracteres especiales en llamado WS desde VFP

108 views
Skip to first unread message

Oscar Quiros Coto

unread,
Apr 16, 2024, 7:26:08 PM4/16/24
to Comunidad de Visual Foxpro en Español
Buenas tardes, amigos tengo problemas con caracteres especiales como ñòìèà etc, a la hora de consumir un WS, si pongo esos caracteres en el url no se ejecuta el WS, el cual esta montado en un PHP.

Por ejemplo
 https://www.oscar.com/prueba.php?mensaje=Quiròs
si el mensaje es Quiròs, no se ejecuta, pero si le pongo Quiros si funciona
alguno me puede dar algun tip para resolverlo.


Gracias

Zarlu

unread,
Apr 16, 2024, 7:34:11 PM4/16/24
to Comunidad de Visual Foxpro en Español
Buenas tardes Oscar!

No estoy seguro de lo que te voy a sugerir, pero podrías probar a sustituir con esta función:

*---------------------------------
FUNCTION acentos(lcDato)
*https://www.degraeve.com/reference/specialcharacters.php
LOCAL lcDato
lcDato=STRTRAN(lcDato, "á", "á")
lcDato=STRTRAN(lcDato, "Á", "Á")
lcDato=STRTRAN(lcDato, "é", "é")
lcDato=STRTRAN(lcDato, "É", "É")
lcDato=STRTRAN(lcDato, "í", "í")
lcDato=STRTRAN(lcDato, "Í", "Í")
lcDato=STRTRAN(lcDato, "ó", "ó")
lcDato=STRTRAN(lcDato, "Ó", "Ó")
lcDato=STRTRAN(lcDato, "ú", "ú")
lcDato=STRTRAN(lcDato, "Ú", "Ú")
lcDato=STRTRAN(lcDato, "ñ", "ñ")
lcDato=STRTRAN(lcDato, "Ñ", "Ñ")
lcDato=STRTRAN(lcDato, "ü", "ü")
lcDato=STRTRAN(lcDato, "Ü", "Ü")
RETURN (lcDato)
ENDFUNC

Suerte
zarlu
Chetumal, Quintana Roo, México

Oscar Quiros Coto

unread,
Apr 16, 2024, 9:17:41 PM4/16/24
to publice...@googlegroups.com
Si es algo asi necesito, pero no ese strtran no funciona por el caracterer &

De momento voy a pasar los acentos a vocales sin acento, hasta llegar con la solución.

--
Blog de la Comunidad Visual FoxPro en Español http://comunidadvfp.blogspot.com
---
Has recibido este mensaje porque estás suscrito a un tema del grupo "Comunidad de Visual Foxpro en Español" de Grupos de Google.
Para cancelar la suscripción a este tema, visita https://groups.google.com/d/topic/publicesvfoxpro/XXMQ4bSQEkM/unsubscribe.
Para cancelar la suscripción a este grupo y a todos sus temas, envía un correo electrónico a publicesvfoxp...@googlegroups.com.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/publicesvfoxpro/0b471d1b-c1e9-42da-bb63-b5984f0b20d4n%40googlegroups.com.

Oscar Quiros Coto

unread,
Apr 16, 2024, 10:17:14 PM4/16/24
to publice...@googlegroups.com
La respuesta es la siguiente, o por lo menos así me funciona, tal vez alguien tenga otra opcion.

function convertir
parameters lcDato

cfile=GETENV("TEMP")+'\w'+TTOC(DATETIME(),1)+'.txt'
strtofile(strconv(lcDato,9),cfile)
lcDato=filetostr(cfile)
DELETE FILE &cfile

return lcDato



El mar, 16 abr 2024 a las 17:34, Zarlu (<not...@prodigy.net.mx>) escribió:
--

Zarlu

unread,
Apr 17, 2024, 9:27:33 AM4/17/24
to Comunidad de Visual Foxpro en Español
Buenos días Oscar!

Quizá no sea indispensable convertirlo a archivo?
Podría funcionar así:
lcDato=StrConv(lcDato,9)

Suerte
zarlu
Chetumal, Quintana Roo, Mexico
Reply all
Reply to author
Forward
0 new messages