Cita de: drvy | BSM en 29 Abril 2013, 05:28 AM
Mas bien, no entiendo ni un carajo de lo que has puesto...
Saludos
algo como un convertidor de enlaces de descarga a base64 , pero que decodifique luego los enlaces de descarga a sus estado normal y conocido.
Código (javascript) [Seleccionar]
<html>
<head>
<script type="text/javascript">
function b64(){
var key = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/='.split('');
var e = document.getElementById('str');
var a = document.getElementById('res');
var str = e.value; var r = new Array(); var s = new Array();
for(i=0,x='';i<str.length;i++){
if(str.charCodeAt(i).toString(2).length!=8) x = '0';
r.push(x+str.charCodeAt(i).toString(2));
}
r = r.join('');
for(c=0,k=0;c<(Math.ceil(r.length/6));c++){
k = parseInt(r.substr(c*6,6),2);
//alert(k);
if(isNaN(k)){
s.push(key[64]);
} else {
s.push(key[k]);
}
}
a.innerHTML = s.join('');
}
</script>
</head>
<body>
<p>Man = TWFu</p>
<p>
<input type="text" id="str" value="Man" />
<input type="button" onclick="b64()" value="convertir a b64" />
</p>
<p id="res"></p>
</body>
</html>
Código (javascript) [Seleccionar]
function base64_encode (str) {
var bin, bits = '', charset = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/', index, r = '', n = str.length, len = (n + 2 - ((n + 2) % 3)) / 3 * 4;
for (var i = 0, c = str.length; i < c; ++i) {
bin = str.charCodeAt(i).toString(2);
if (bin.length !== 8) {
bin = 0 + bin;
}
bits += bin;
}
for (var i = 0, c = Math.ceil(bits.length / 6); i < c; ++i) {
index = parseInt(bits.substr(i * 6, 6), 2);
r += charset[index];
}
while (r.length < len) {
r += '=';
}
return r;
}