Italian EncodeUrl

LordZenzo

Well-Known Member
Licensed User
Longtime User

LucaMs

Expert
Licensed User
Longtime User
infatti encodeurl fa parte di stringutils :mad::mad::mad::mad::(
Ecco, allora mi sa che non ti ho aiutato moltissimo :p.

Beh, visto che non me ne sono mai occupato, è ora che gli dia un'occhiata (mi sa che URL e WEB esistono già da qualche mese, vero? :p)

Vediamo se leggendo in fretta e furia e in inglese, riesco a trovarti la soluzione (detto in inglese: nun ce sperà troppo :D).

Dal tuo primo post mi sembra di capire che hai problemi in "uscita e in entrata", ovvero il primo esempio tenta di raggiungere un URL ma lo spazio te lo impedisce, mentre il secondo riguarda la ricezione dati incasinata, giusto?


Ah, stai usando una webview (altra cosa che non uso mai per gli stessi motivi)?
 

LucaMs

Expert
Licensed User
Longtime User
Method_636.png
EncodeUrl (Url As String, CharSet As String) As String

Encodes a string into application/x-www-form-urlencoded format.
Url - String to encode.
CharSet - The character encoding name.
Example:
Dim su As StringUtils
Dim url, encodedUrl As String
encodedUrl = su.EncodeUrl(url, "UTF8")

Questo è ciò che ho trovato. Suppongo che tu lo abbia usato e, se è così ed ottieni errori, probabilmente dipende dal server che non sta usando la codifica UTF8.
Forse stai usando MySql e va settato diversamente?
 

LordZenzo

Well-Known Member
Licensed User
Longtime User
allora, mi serve per chiamare dei comandi in php con HttpJob ed ottenere i dati dentro al mysql
chiaramente alcuni caratteri devono essere decodificati, lo spazio è uno, ma anche il '?' e '/'
gli ultimi due li evito ma lo 'spazio' servirebbe...
 

LucaMs

Expert
Licensed User
Longtime User
Direi di provare in questo modo:

B4X:
Dim Url As String = "http://miosito.com/comando.php?valore=ciao&valore2=ciao mondo"
Url = su.EncodeUrl(Url, "UTF8")
Url = Url.Replace("+", "%20")

Potrebbe funzionare, ma non credo sia il modo corretto, dato che ti costringe a fare questo a manina (ripeto, non ci ho mai messo le mani!). Però prova, tanto per sapere
 
Last edited:

sirjo66

Well-Known Member
Licensed User
Longtime User
Quello che hai sbagliato è che hai urlencodato tutto, invece devi solo farlo sui parametri che gli passi

Ad esempio:
B4X:
Dim su As StringUtils
comando = "http://miosito.com/comando.php?valore=" & su.EncodeUrl("ciao","UTF8") & "&valore2=" & su.EncodeUrl("ciao mondo","UTF8")

Spero di esserti stato utile
Sergio
 

Similar Threads

Top