Foros del Web » Programando para Internet » PHP »

error Function name must be a string

Estas en el tema de error Function name must be a string en el foro de PHP en Foros del Web. Me crea error en la linea de anteriror del echo if ($x == $Abec2($y)) gracias de antemano. Código PHP: <?     $pass  =  "pepu" ;         ...
  #1 (permalink)  
Antiguo 18/01/2008, 01:54
 
Fecha de Ingreso: enero-2008
Mensajes: 21
Antigüedad: 16 años, 3 meses
Puntos: 0
error Function name must be a string

Me crea error en la linea de anteriror del echo if ($x == $Abec2($y)) gracias de antemano.

Código PHP:
<?    
$pass 
"pepu";
       
$Abec2 = array('a' 'A' 'B' 'b' 'C' 'c' 'D' 'd' 'E' 'e' 'F' 'f' 'G' 'g' 'H' 'h' 'i' 'I' 'J' 'j' 'K' 'k''L' 'l' 'M' 'm' 'n' 'N' 'o' 'O' 'P' 'p''q' 'Q' 'R' 'r' 's' 'S' 'T''t' 'U''u' 'V' 'v' 'W' 'w' 'x' 'X' 'Y''y' 'Z' 'z' '0' '1''2''3''4''5''6''7''8''9''-' ); 
         
//67 caracteres
         
$x;
         
$y;
         
$pos;
         
$sw;
         
$resultado;
         
$passdencri;
         
$longitud strlen($pass);
        
        for(
$x=0$x<=$longitud$x++){

            
$y 0;
            
$sw 0;
            echo 
"$y";
            echo 
"$sw";
            while (
$y <=67 || $sw 0)
            {
//sw=0 = FALSE
            
echo "while";
               if (
$x == $Abec2($y))
               {
                    
$sw 1; }
                else{
                    
$y $y 1;
                    }
            }
// End While
            
            
if ( $sw == )
            {        
            echo 
"if %sw";
            
                
$pos = ($y 3) % 67;
                
$resultado $Abec2($pos);
                
$passdencri $passdencri $resultado;
                echo 
"pos $pos";
                echo 
" resulta &resultado";
                echo 
"passdencri $passdencri";
                
            }
//End If
        
}//fin for        
     // echo " pass desen: $passdencri";    
    
?>
  #2 (permalink)  
Antiguo 18/01/2008, 02:01
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Re: error Function name must be a string

$Abec es un array, para indicar el indice es con [], no con ().
  #3 (permalink)  
Antiguo 18/01/2008, 03:40
 
Fecha de Ingreso: enero-2008
Mensajes: 21
Antigüedad: 16 años, 3 meses
Puntos: 0
Re: error Function name must be a string

aun poniendolo asi no me lee nada en la variable Abec2
  #4 (permalink)  
Antiguo 18/01/2008, 04:24
 
Fecha de Ingreso: octubre-2004
Mensajes: 2.627
Antigüedad: 19 años, 5 meses
Puntos: 48
Re: error Function name must be a string

Pero eso ya es otro problema que no tiene nada que ver con el error de sintaxis.

Pero estas de suerte, lo he visto sin querer:
Código PHP:
while ($y <=67 || $sw 0
Se te olvido un = en la comparacion de $sw, con lo que en vez de una comparacion estas haciendo una asignacion. Para evitar este error yo lo que hago es poner la constante primero en la comparacion:
Código PHP:
while ($y <=67 || == $sw
En caso de olvidarseme un = el propio PHP me mostraria un error de "no se puede asignar un valor a una constante".

Otro fallo, pero este es de la logica de la solucion, es que en ese
Código PHP:
if ($x == $Abec2[$y]) 
estas comparando $x que es un numero entre 0 y $longitud con los elementos del array $Abec2, que son caracteres. Quizas no hace lo que tu esperas que haga http://es2.php.net/manual/es/languag...ing.conversion
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 12:22.