entre Desarrolladores

Recibe ayuda de expertos

Registrate y pregunta

Es gratis y fácil

Recibe respuestas

Respuestas, votos y comentarios

Vota y selecciona respuestas

Recibe puntos, vota y da la solución

Pregunta

3votos

error Call to undefined method Template::getLocationId()

Hola chicos, estoy con la programación de un multiselect quisiera saber¿cuales pueden ser las razones de este error Call to undefined method Template::getLocationId() on line 248?

Esta es la parte donde esta mi linea 248, lo de localidades es el nombre de una tabla de una base de datos.

  $lascolonias = $_GET['colonia'];
    $colonias = explode(":", $lascolonias);
    $colonias = array_values( array_filter($colonias) );

    $numcols = count($colonias);

    if($numcols>0)
    {
      $x=1;
      foreach($colonias as $c)
      {
**  Linea 248   $col = $this->getLocationId("localidades",$c);**
        $wherecols .= "p.colonia = ".$col;

        if( ($numcols>1) && ($x<$numcols) )
          $wherecols .= " OR ";

        $x++;
      }

      $wherecols= "AND (".$wherecols.")";
    }
    else
    {
      $wherecols= "";
    }

1 Respuesta

3votos

Leonardo-Tadei Puntos227320

Hola @johana,

el error no parece estar en el multiselect, sino en que $this no es el que tiene los ID de las localidades... le estás haciendo getLocationId() al objeto equivocado.

Pareciera que las localidades están en $colonias ... que además siendo un vector, podrías recorrer con foreach, que es más cómodo, y si es una array plano, no tendrá métodos, sino valores (pero tal vez sea un array de Objetos: esto no se ve en el código).

Mandanos la salida de un var_dump($colonias); y podríamos ayudarte mejor!!

Saludos cordiales

0voto

johana comentado

Hola Leonardo, faltaba declarar mi function getLocationId () y lo que contendría en ella, dentro de otro archivo class Site{}, lo hise ya no me marcó el error, te lo agradezco!

Por favor, accede o regístrate para responder a esta pregunta.

Otras Preguntas y Respuestas


...

Bienvenido a entre Desarrolladores, donde puedes realizar preguntas y recibir respuestas de otros miembros de la comunidad.

Conecta