Foros del Web » Programando para Internet » PHP »

Ejecutar Función (generar serial-key)

Estas en el tema de Ejecutar Función (generar serial-key) en el foro de PHP en Foros del Web. Tengo una función PHP, pero no la puedo ejecutar Código PHP: <?      function  generateKey ( $webroot , $shortname , $version ){           $webroot  =  ...
  #1 (permalink)  
Antiguo 07/06/2005, 15:57
 
Fecha de Ingreso: noviembre-2004
Ubicación: Viña del Mar - Chile
Mensajes: 9
Antigüedad: 19 años, 5 meses
Puntos: 0
Exclamación Ejecutar Función (generar serial-key)

Tengo una función PHP, pero no la puedo ejecutar

Código PHP:
<?
    
function generateKey($webroot,$shortname,$version){ 

        
$webroot strtolower(trim($webroot)); 
        for(
$i=0;$i<strlen($webroot);$i++){ 
            
$alpha substr($webroot,$i,+1); 
            
$key1 $key1 $this->getValue($alpha); 
        } 

        
$shortname strtolower(trim($shortname)); 
        for(
$i=0;$i<strlen($shortname);$i++){ 
            
$alpha substr($shortname,$i,1); 
            
$key3 $key3 $this->getValue($alpha); 
        } 

        
$version strtolower(trim($version)); 
        for(
$i=0;$i<strlen($version);$i++){ 
            
$alpha substr($version,$i,1); 
            
$key4 $key4 $this->getValue($alpha); 
        } 
         
        
$hkey1 = ($key1 $key3 $key4) * 9
        
$hkey2 = ($key1 $key3 $key4) * 2
        
$hkey3 = ($key1 $key3 $key4) * 3
        
$hkey4 = ($key1 $key3 $key4) * 5
        
$ckey1 substr(strtoupper(crypt($hkey1,$key1)),3,6); 
        
$ckey1 str_replace(".","A",$ckey1); 
        
$ckey1 str_replace("/","Z",$ckey1); 
        
$ckey2 substr(strtoupper(crypt($hkey2,$key1)),3,6); 
        
$ckey2 str_replace(".","G",$ckey2); 
        
$ckey2 str_replace("/","3",$ckey2); 
        
$ckey3 substr(strtoupper(crypt($hkey3,$key3)),3,6); 
        
$ckey3 str_replace(".","6",$ckey3); 
        
$ckey3 str_replace("/","D",$ckey3); 
        
$ckey4 substr(strtoupper(crypt($hkey4,$key4)),3,6); 
        
$ckey4 str_replace(".","K",$ckey4); 
        
$ckey4 str_replace("/","W",$ckey4); 
         
        return 
$ckey1."-".$ckey2."-".$ckey3."-".$ckey4
    } 

    function 
getValue($alpha){ 
        switch(
$alpha){         
            case 
'a': return 6678 ; break; 
            case 
'b': return 1712 ; break; 
            case 
'c': return 5513 ; break; 
            case 
'd': return 6648 ; break; 
            case 
'e': return 7626 ; break; 
            case 
'f': return 4581 ; break; 
            case 
'g': return 7221 ; break; 
            case 
'h': return 4891 ; break; 
            case 
'i': return 4441 ; break; 
            case 
'j': return 8503 ; break; 
            case 
'k': return 7567 ; break; 
            case 
'l': return 8028 ; break; 
            case 
'm': return 2074 ; break; 
            case 
'n': return 1770 ; break; 
            case 
'o': return 2442 ; break; 
            case 
'p': return 3321 ; break; 
            case 
'q': return 3899 ; break; 
            case 
'r': return 2474 ; break; 
            case 
's': return 5313 ; break; 
            case 
't': return 7505 ; break; 
            case 
'u': return 9808 ; break; 
            case 
'v': return 3571 ; break; 
            case 
'w': return 3352 ; break; 
            case 
'x': return 3410 ; break; 
            case 
'y': return 7058 ; break; 
            case 
'z': return 5847 ; break; 
            case 
'0': return 15058 ; break; 
            case 
'1': return 89739 ; break; 
            case 
'2': return 27663 ; break; 
            case 
'3': return 53044 ; break; 
            case 
'4': return 74136 ; break; 
            case 
'5': return 89338 ; break; 
            case 
'6': return 17816 ; break; 
            case 
'7': return 93186 ; break; 
            case 
'8': return 84464 ; break; 
            case 
'9': return 58450 ; break; 
            default:  return 
1419 ;    break;         
        } 
    } 
$webroot "http://usuarios.lycos.es/";
$shortname "gvenegas";
$version "3.0";

    echo 
generateKey($webroot,$shortname,$version);
?>
El problema es que al ponerle los valores me da error en la líea 7 y si se los oculto, me arroja un serial en formato ARGHQL-QPKWZG-LP9MD3-SWHARK
Espero puedan ayudarme

Última edición por gvenegas; 08/06/2005 a las 07:32
  #2 (permalink)  
Antiguo 08/06/2005, 09:04
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 19 años, 11 meses
Puntos: 0
Podrías decirnos la descripción de tu error,
Talvez si llamas a la función getValue por su nombre, $this->getValue($alpha);
__________________
Julio Hernández
  #3 (permalink)  
Antiguo 08/06/2005, 09:16
 
Fecha de Ingreso: noviembre-2004
Ubicación: Viña del Mar - Chile
Mensajes: 9
Antigüedad: 19 años, 5 meses
Puntos: 0
Lo que pasa es que esta función la encontré por ahí, para generar el serial, pero no lo muestra en esa función...
Yo soy amateur en esto de PHP, pero de a poco voy entendiendo más cosas, pero ésto no lo entiendo porque sin las variables me da un resultado, y cuando coloco las variables me da el error.

Estoy desorientado..
  #4 (permalink)  
Antiguo 08/06/2005, 09:18
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
¿eso es todo el archivo? Parece como si te hubieses copiado UNA PARTE de un POO...
  #5 (permalink)  
Antiguo 08/06/2005, 09:22
 
Fecha de Ingreso: noviembre-2004
Ubicación: Viña del Mar - Chile
Mensajes: 9
Antigüedad: 19 años, 5 meses
Puntos: 0
Exclamación

Grande BOCA...

En realidad es un parte, pero esa es la única pete que tiene que ver con la creación del serial...

Cita:
Iniciado por Seppo
¿eso es todo el archivo? Parece como si te hubieses copiado UNA PARTE de un POO...
  #6 (permalink)  
Antiguo 08/06/2005, 09:27
 
Fecha de Ingreso: mayo-2004
Ubicación: Managua, Nicaragua
Mensajes: 281
Antigüedad: 19 años, 11 meses
Puntos: 0
Lo trata como si llamase a un método o una propiedad de una clase cuando en realidad es una función declarada abajo, no tengo aqui en mi mano un server para correrlo, pero si llama a esa función $this->getValue($alpha);. pero si le quitas el $this, bueno no sé.

También poné la descripción de tu error, porque es mejor darse una idea de lo que puede estar ocurriendo, y también el sitio donde lo bajaste, talvez falta algo mas, aunque no creo!!!.
__________________
Julio Hernández
  #7 (permalink)  
Antiguo 08/06/2005, 09:30
Avatar de Seppo  
Fecha de Ingreso: marzo-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.284
Antigüedad: 19 años, 1 mes
Puntos: 17
¿Qué es lo que pretendés que devuelva?
A mi me devolvió ZSZRBW-FOWZBW-0N4DXA-N9AELC cuando borré los $this-> (porque no estaba en ninguna clase)
  #8 (permalink)  
Antiguo 08/06/2005, 10:03
Avatar de crazyandmaniac  
Fecha de Ingreso: mayo-2005
Mensajes: 99
Antigüedad: 18 años, 11 meses
Puntos: 0
alguien peleme no?
http://<br /> http://forosdelweb.co...t1130613<br />
  #9 (permalink)  
Antiguo 08/06/2005, 10:07
Avatar de crazyandmaniac  
Fecha de Ingreso: mayo-2005
Mensajes: 99
Antigüedad: 18 años, 11 meses
Puntos: 0
Código PHP:
<?
function generateKey($webroot,$shortname,$version){

$webroot strtolower(trim($webroot));
for(
$i=0;$i<strlen($webroot);$i++){
$alpha substr($webroot,$i,$i+1);
$key1="";
$this=getValue($alpha);
$key1$key1 $this;
}

$shortname strtolower(trim($shortname));
for(
$i=0;$i<strlen($shortname);$i++){
$alpha substr($shortname,$i,1);

$key3="";
$key3$key3 $this;
}

$version strtolower(trim($version));
for(
$i=0;$i<strlen($version);$i++){
$alpha substr($version,$i,1);
$key4 ="";
$key4 =$key4+$this;
}

$hkey1 = ($key1 $key3 $key4) * 9;
$hkey2 = ($key1 $key3 $key4) * 2;
$hkey3 = ($key1 $key3 $key4) * 3;
$hkey4 = ($key1 $key3 $key4) * 5;
$ckey1 substr(strtoupper(crypt($hkey1,$key1)),3,6);
$ckey1 str_replace(".","A",$ckey1);
$ckey1 str_replace("/","Z",$ckey1);
$ckey2 substr(strtoupper(crypt($hkey2,$key1)),3,6);
$ckey2 str_replace(".","G",$ckey2);
$ckey2 str_replace("/","3",$ckey2);
$ckey3 substr(strtoupper(crypt($hkey3,$key3)),3,6);
$ckey3 str_replace(".","6",$ckey3);
$ckey3 str_replace("/","D",$ckey3);
$ckey4 substr(strtoupper(crypt($hkey4,$key4)),3,6);
$ckey4 str_replace(".","K",$ckey4);
$ckey4 str_replace("/","W",$ckey4);

return 
$ckey1."-".$ckey2."-".$ckey3."-".$ckey4;
}

function 
getValue($alpha){
switch(
$alpha){
case 
'a': return 6678 ; break;
case 
'b': return 1712 ; break;
case 
'c': return 5513 ; break;
case 
'd': return 6648 ; break;
case 
'e': return 7626 ; break;
case 
'f': return 4581 ; break;
case 
'g': return 7221 ; break;
case 
'h': return 4891 ; break;
case 
'i': return 4441 ; break;
case 
'j': return 8503 ; break;
case 
'k': return 7567 ; break;
case 
'l': return 8028 ; break;
case 
'm': return 2074 ; break;
case 
'n': return 1770 ; break;
case 
'o': return 2442 ; break;
case 
'p': return 3321 ; break;
case 
'q': return 3899 ; break;
case 
'r': return 2474 ; break;
case 
's': return 5313 ; break;
case 
't': return 7505 ; break;
case 
'u': return 9808 ; break;
case 
'v': return 3571 ; break;
case 
'w': return 3352 ; break;
case 
'x': return 3410 ; break;
case 
'y': return 7058 ; break;
case 
'z': return 5847 ; break;
case 
'0': return 15058 ; break;
case 
'1': return 89739 ; break;
case 
'2': return 27663 ; break;
case 
'3': return 53044 ; break;
case 
'4': return 74136 ; break;
case 
'5': return 89338 ; break;
case 
'6': return 17816 ; break;
case 
'7': return 93186 ; break;
case 
'8': return 84464 ; break;
case 
'9': return 58450 ; break;
default: return 
1419 ; break;
}
}
$webroot "http://usuarios.lycos.es/";
$shortname "gvenegas";
$version "3.0";

    echo 
generateKey($webroot,$shortname,$version);
?>
si alguien le dan ganas de hacerlo al revex, es decir, que dessencripte, paselo no?
  #10 (permalink)  
Antiguo 08/06/2005, 10:53
 
Fecha de Ingreso: noviembre-2004
Ubicación: Viña del Mar - Chile
Mensajes: 9
Antigüedad: 19 años, 5 meses
Puntos: 0
crazyandmaniac:
Lo probaste tu?
porque a mi me da siempre el mismo código (5O3LXD-S64WRA-QV6YBB-BHZG9K), entonces difícilmente puede codificarse con las distintas variables
  #11 (permalink)  
Antiguo 08/06/2005, 11:30
Avatar de crazyandmaniac  
Fecha de Ingreso: mayo-2005
Mensajes: 99
Antigüedad: 18 años, 11 meses
Puntos: 0
de hecho si lo probe man

mira
Código PHP:
$webroot "insanomus.freecoolsite.com";
$shortname "crazyandmaniac";
$version "666";
echo 
generateKey($webroot,$shortname,$version); 

te da exactamente lo mismo porque tus variables no las estas cambiando, copialo como te lo di, si jala,
nada mas cambia tus
$webroot
$shortname
$version
como las cambie yo viste???
ah y olle, explicame que pedo con getvalue no?
no entiendo que hace
Código PHP:

04VQ6X
-BSDLGF-VNYLBB-JIGJL3 
  #12 (permalink)  
Antiguo 29/12/2013, 11:34
 
Fecha de Ingreso: julio-2013
Ubicación: Free Help :)
Mensajes: 14
Antigüedad: 10 años, 8 meses
Puntos: 0
Respuesta: Ejecutar Función (generar serial-key)

SOLUCIONADO:

Código PHP:
Ver original
  1. <?php
  2. function generateKey($webroot,$shortname,$version){
  3.  
  4. $webroot = strtolower(trim($webroot));
  5. for($i=0;$i<strlen($webroot);$i++){
  6. $alpha = substr($webroot,$i,$i+1);
  7. $key1="";
  8. $thisS=getValue($alpha);
  9. $key1= $key1 + $thisS;
  10. }
  11.  
  12. $shortname = strtolower(trim($shortname));
  13. for($i=0;$i<strlen($shortname);$i++){
  14. $alpha = substr($shortname,$i,1);
  15.  
  16. $key3="";
  17. $key3= $key3 + $thisS;
  18. }
  19.  
  20. $version = strtolower(trim($version));
  21. for($i=0;$i<strlen($version);$i++){
  22. $alpha = substr($version,$i,1);
  23. $key4 ="";
  24. $key4 =$key4+$thisS;
  25. }
  26.  
  27. $hkey1 = ($key1 + $key3 * $key4) * 9;
  28. $hkey2 = ($key1 * $key3 - $key4) * 2;
  29. $hkey3 = ($key1 - $key3 * $key4) * 3;
  30. $hkey4 = ($key1 - $key3 - $key4) * 5;
  31. $ckey1 = substr(strtoupper(crypt($hkey1,$key1)),3,6);
  32. $ckey1 = str_replace(".","A",$ckey1);
  33. $ckey1 = str_replace("/","Z",$ckey1);
  34. $ckey2 = substr(strtoupper(crypt($hkey2,$key1)),3,6);
  35. $ckey2 = str_replace(".","G",$ckey2);
  36. $ckey2 = str_replace("/","3",$ckey2);
  37. $ckey3 = substr(strtoupper(crypt($hkey3,$key3)),3,6);
  38. $ckey3 = str_replace(".","6",$ckey3);
  39. $ckey3 = str_replace("/","D",$ckey3);
  40. $ckey4 = substr(strtoupper(crypt($hkey4,$key4)),3,6);
  41. $ckey4 = str_replace(".","K",$ckey4);
  42. $ckey4 = str_replace("/","W",$ckey4);
  43.  
  44. return $ckey1."-".$ckey2."-".$ckey3."-".$ckey4;
  45. }
  46.  
  47. function getValue($alpha){
  48. switch($alpha){
  49. case 'a': return 6678 ; break;
  50. case 'b': return 1712 ; break;
  51. case 'c': return 5513 ; break;
  52. case 'd': return 6648 ; break;
  53. case 'e': return 7626 ; break;
  54. case 'f': return 4581 ; break;
  55. case 'g': return 7221 ; break;
  56. case 'h': return 4891 ; break;
  57. case 'i': return 4441 ; break;
  58. case 'j': return 8503 ; break;
  59. case 'k': return 7567 ; break;
  60. case 'l': return 8028 ; break;
  61. case 'm': return 2074 ; break;
  62. case 'n': return 1770 ; break;
  63. case 'o': return 2442 ; break;
  64. case 'p': return 3321 ; break;
  65. case 'q': return 3899 ; break;
  66. case 'r': return 2474 ; break;
  67. case 's': return 5313 ; break;
  68. case 't': return 7505 ; break;
  69. case 'u': return 9808 ; break;
  70. case 'v': return 3571 ; break;
  71. case 'w': return 3352 ; break;
  72. case 'x': return 3410 ; break;
  73. case 'y': return 7058 ; break;
  74. case 'z': return 5847 ; break;
  75. case '0': return 15058 ; break;
  76. case '1': return 89739 ; break;
  77. case '2': return 27663 ; break;
  78. case '3': return 53044 ; break;
  79. case '4': return 74136 ; break;
  80. case '5': return 89338 ; break;
  81. case '6': return 17816 ; break;
  82. case '7': return 93186 ; break;
  83. case '8': return 84464 ; break;
  84. case '9': return 58450 ; break;
  85. default: return 1419 ; break;
  86. }
  87. }
  88. $webroot = "insanomus.freecoolsite.com";
  89. $shortname = "crazyandmaniac";
  90. $version = "666";
  91. echo generateKey($webroot,$shortname,$version);
  92. ?>

le aumente un S a $this porque no esta en una clase
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:30.