PHP - Pasar valor de un select en una función a otra funcion

 
Vista:
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Pasar valor de un select en una función a otra funcion

Publicado por alvin (6 intervenciones) el 17/03/2017 15:06:12
Buenos días, de antemano agradeciendo cualquier ayuda. el problema es que tengo la siguiente función que cargar datos de mysql a un select dentro de una función.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function fill_brand($connect)
 {
      $output = '';
      $sql = "SELECT tl_room.idroom, tl_room.name FROM tl_room WHERE tl_room.idacc='2052'";
      $result = mysqli_query($connect, $sql);
      while($row = mysqli_fetch_array($result))
      {
           $output .= '<option value="'.$row["idroom"].'">'.$row["name"].'</option>';
      }
      return $output;
 
      /*esto funciona bien pero necesito el valor de $row["name"] almacenado en una variable que lo pueda usar en otra función para poder hacer una consulta mysql con ese valor. he intentado la siguiente pero sin éxito*/
 
     global $recoletor;
     $recoletor=$row["name"];
 }

Aquí la otra función donde utilizo el valor del $recoletor, para hacer la consulta sql. pero no funciona. muestra el siguiente error. Notice: Undefined variable: recoletor in C:\xampp\htdocs\select\prueba1.php on line 22

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
function fill_product($connect)
 {
      $output = '';
      $sql = "SELECT tl_availability.price_per_person, tl_availability.price_child, tl_availability.price_extra_pack, tl_room.max_adult, tl_room.max_child, tl_room.max_extrapack
      FROM tl_availability INNER JOIN tl_room ON tl_availability.idroom = tl_room.idroom WHERE tl_availability.idacc='2052' AND tl_room.name='".$recoletor."'";  /*aquí utilizo la variable para la consulta*/
      $result = mysqli_query($connect, $sql);
      while($row = mysqli_fetch_array($result))
      {
           $output .= '<div class="col-md-3">';
           $output .= '<div style="border:1px solid #ccc; padding:20px; margin-bottom:20px;">'.$row["price_per_person"].'';
           $output .= '</div>';
           $output .= '</div>';
      }
      return $output;
 }

Agradeciendo cualquier tipo de ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Pasar valor de un select en una función a otra funcion

Publicado por kip (877 intervenciones) el 17/03/2017 15:42:26
Hola, si trabajas en una clase cuyos métodos son los que colocaste puedes declarar una propiedad y acceder a ella desde cualquier método de la clase, pero si no estas trabajando con una clase y solo con funciones hazlo asi:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
function fill_product($connect)
 {
      global $recoletor; // Agrega esto
      $output = '';
      $sql = "SELECT tl_availability.price_per_person, tl_availability.price_child, tl_availability.price_extra_pack, tl_room.max_adult, tl_room.max_child, tl_room.max_extrapack
      FROM tl_availability INNER JOIN tl_room ON tl_availability.idroom = tl_room.idroom WHERE tl_availability.idacc='2052' AND tl_room.name='".$recoletor."'";  /*aquí utilizo la variable para la consulta*/
      $result = mysqli_query($connect, $sql);
      while($row = mysqli_fetch_array($result))
      {
           $output .= '<div class="col-md-3">';
           $output .= '<div style="border:1px solid #ccc; padding:20px; margin-bottom:20px;">'.$row["price_per_person"].'';
           $output .= '</div>';
           $output .= '</div>';
      }
      return $output;
 }

Prueba y cuentanos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Pasar valor de un select en una función a otra funcion

Publicado por alvin (6 intervenciones) el 17/03/2017 16:35:19
Gracias amigo por la sugerencia, pero no me ha funcionado

Fíjate aquí lo hago como lo dijiste y no devuelve resultado alguno.

recoletor
recoleto-vacio

Aquí le doy un valor por defecto a $recoletor='sencilla', y si me muestra resultado, lo que me da a entender que el valor no esta pasando de función a función de la forma que dijiste

sencilla-code
precio-con-sencilla
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Pasar valor de un select en una función a otra funcion

Publicado por kip (877 intervenciones) el 17/03/2017 16:47:13
Ahora lo veo, estas haciendo mal entonces porque segun veo es que dependiendo del valor del select la variable $recolector cambia no ?

Si es asi debes hacerlo mediante un formulario y que se envie el valor del select a la funcion, o quizas mediante AJAX para que no debas recargar la pagina pero aqui debes crear código Javascript.

Cuentame si es asi como lo pienso o el valor de $recolector es estatico y no depende del select.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil
Val: 9
Ha aumentado su posición en 14 puestos en PHP (en relación al último mes)
Gráfica de PHP

Pasar valor de un select en una función a otra funcion

Publicado por alvin (6 intervenciones) el 17/03/2017 17:08:47
Amigo, diste en el punto, el valor del $recoletor depende del valor del select, entonces ese valor(sencillo), se lo tengo que enviar a otra función para que realice una búsqueda mysql. El valor del select es totalmente dinámico, puede cambiar dependiendo el valor que elija el usuario.

Quiero hacerlo exactamente como dijiste con AJAX, que realice la consulta sin recargar la pagina. el problema que de AJAX no se nada.
Si me pudieras ayudar te lo agradezco o mostrarme un ejemplo funcional.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar