Ver Mensaje Individual
  #6  
Antiguo 29-12-2015
bucanero bucanero is offline
Miembro
 
Registrado: nov 2013
Ubicación: Almería, España
Posts: 208
Reputación: 11
bucanero Va camino a la fama
Hola,

basicamente en la función DELPHI esta linea asigna el valor de result, cuando no tiene aun nada guardado

Código Delphi [-]
result := EncodeBase64(BytesOf(result), length(BytesOf(result)));

sustituyela por esta otra

Código Delphi [-]
  result := EncodeBase64(BytesOf(Res), length(BytesOf(Res)));

y la funcion PHP en algunas variables no estaba el $ de variable, y los indices en PHP empiezan en 0. Te dejo la función completa ya corregida
Código PHP:
function DecryptStr2($str,$key) {
  
$p=0;
  
$result '';

  
$key_length strlen($key);
  
$encoded_data base64_decode($str);
 
  
$length strlen($encoded_data);
  for (
$i 0$i $length$i++) {

    
$result .= chr(ord($encoded_data[$i]) ^ ord($key[$p]));
    
$p++;
    if (
$p >= $key_length) {
      
$p=0;
    }
  }
  return 
$result;

con esto ya creo que funciona bien,

Un saludo
Responder Con Cita