Programación General > Visual Basic 6.0 e inferiores

 Duda De Caracteres

<< < (2/3) > >>

ciber_lep:
Listo he encontrado la solucion

pero claro voy a usar la funcion que Angel_K_ido me proporciono
solo que la codificacion que  proponen es   HTML_NOMBRE Y HTML_CODIGO

pero voy a utilizar la CODIFICACION HTML_HEX que el navegador reconoce como
%ALGUNCODIGO_HEXADECIMAL

por ejemplo  %40  =   @

y no tendre problemas de cortamiento


Gracias por su ayuda.

Mollense:
Hola viejo, mirá, estuve toqueteando un poco y llegue a hacerlo funcionar con las siguientes correspondencias (Solamente probando en el navegador):


--- Citar ---á = %E1
é = %E9
í = %ED
ó = %F3
ú = %FA
Á = %C1
É = %C9
Í = %CD
Ó = %D3
Ú = %DA
ñ = %F1
Ñ = %D1
--- Fin de la cita ---
Por lo que tu ejemplo quedaría así:
--- Código: Text ---localhost/pagina/carga.php?campo1=auzl&campo2=%F1a%F1o 
Me parece que me voy a instalar Visual Basic  :comp:

Probalo a ver que pasa.-

Saludos

Mollense:
Buenas de nuevo...

Acabo de apropiarme (Con fin educativo) de dos funciones que te muestro a continuación:
--- Código: Text ---&#60;html xmlns=&#34;http://www.w3.org/1999/xhtml&#34; xml:lang=&#34;es&#34;&#62;  &#60;head&#62;    &#60;title&#62;Codificador y descoficador de cadena de texto a (o desde) formato URL&#60;/title&#62;     &#60;script type=&#34;text/javascript&#34;&#62;      function URLEnc( ){        var nocodificar = &#34;0123456789&#34;+&#34;ABCDEFGHIJKLMNOPQRSTUVWXYZ&#34;+&#34;abcdefghijklmnopqrstuvwxyz&#34; +&#34;-_.!~*'()&#34;;        var HEX = &#34;0123456789ABCDEF&#34;;        var textoAcodificar = document.Form1.encode.value;        var codificado = &#34;&#34;;        for (var i = 0; i &#60; textoAcodificar.length; i++ ) {          var ch = textoAcodificar.charAt(i);            if (ch == &#34; &#34;) {              codificado += &#34;+&#34;;          } else if (nocodificar.indexOf(ch) != -1) {              codificado += ch;          } else {              var charCode = ch.charCodeAt(0);            if (charCode &#62; 255) {                alert( &#34;Caracter Unicode '&#34;+ch+&#34;' no puede ser codificado utilizando la codificación URL estandar.&#092;n&#34; +                        &#34;(sólo soporta caracteres de 8-bit.)&#092;n&#34; +                    &#34;Será sustituido por un símbolo de suma (+).&#34; );              codificado += &#34;+&#34;;            } else {              codificado += &#34;%&#34;;              codificado += HEX.charAt((charCode &#62;&#62; 4) & 0xF);              codificado += HEX.charAt(charCode & 0xF);            }          }        }        document.Form1.decode.value = codificado;        return false;      };            function URLDec( ){         var HEXCHARS = &#34;0123456789ABCDEFabcdef&#34;;          var codificado = document.Form1.decode.value;         var textoAcodificar = &#34;&#34;;         var i = 0;         while (i &#60; codificado.length) {             var ch = codificado.charAt(i);           if (ch == &#34;+&#34;) {               textoAcodificar += &#34; &#34;;             i++;           } else if (ch == &#34;%&#34;) {            if (i &#60; (codificado.length-2)                 && HEXCHARS.indexOf(codificado.charAt(i+1)) != -1                 && HEXCHARS.indexOf(codificado.charAt(i+2)) != -1 ) {              textoAcodificar += unescape( codificado.substr(i,3) );              i += 3;            } else {              alert( 'Bad escape combination near ...' + codificado.substr(i) );              textoAcodificar += &#34;%[ERROR]&#34;;              i++;            }          } else {             textoAcodificar += ch;             i++;          }        }          document.Form1.encode.value = textoAcodificar;         return false;      };    &#60;/script&#62;      &#60;/head&#62;   &#60;body&#62;       &#60;form name=&#34;Form1&#34; onsubmit=&#34;return false;&#34; &#62;        &#60;p&#62;          Descodificado:&#60;input name=&#34;encode&#34; size=&#34;50&#34; value=&#34;&#34;&#62;        &#60;/p&#62;        &#60;p&#62;          Codificado:&#60;input name=&#34;decode&#34; size=&#34;50&#34; value=&#34;&#34;&#62;        &#60;/p&#62;        &#60;p&#62;          &#60;input value=&#34;URLEncode&#34; type=&#34;button&#34; onclick=&#34;return URLEnc()&#34;&#62;           &#60;input value=&#34;URLDecode&#34; type=&#34;button&#34; onclick=&#34;return URLDec()&#34;&#62;        &#60;/p&#62;      &#60;/form&#62;  &#60;/body&#62; &#60;/html&#62; Lo he probado y funciona perfecto.

También hechale una mirada a esto

Salute :beer:

Mollense:

--- Cita de: "ciber_lep" --- Listo he encontrado la solucion

pero claro voy a usar la funcion que Angel_K_ido me proporciono
solo que la codificacion que  proponen es   HTML_NOMBRE Y HTML_CODIGO

pero voy a utilizar la CODIFICACION HTML_HEX que el navegador reconoce como
%ALGUNCODIGO_HEXADECIMAL

por ejemplo  %40  =   @

y no tendre problemas de cortamiento


Gracias por su ayuda.
--- Fin de la cita ---
 :P Jaja, no había visto tu post. y yo seguia buscando info...  :P

ciber_lep:
Asi Es  :D   pero igual esas ideas son muy buenas

Gracias sinceramente por tu ayuda.

 :D

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa