Select name y funciones

Buenas tardes amigo de todos expertos espero que se encuentre bien de salud, el problema que tengo es el siguiente tengo el siguiente código mediante un selct name mando a llamar 2 funciones, el problema que tengo es que no llama las funciones cual puede ser el problema aclaro que las funciones si las llama fuera del select name pero solo llama una y lo que quiero es poder mostrar la que seleccione
<?php
require('clases/cliente.class.php');
$objCliente=new Cliente;
?>
<SELECT NAME="ListeUrl" SIZE=1 onChange="ChangeUrl(this.form)">
<OPTION SELECTED VALUE="">-Selecciona Sesion-
  <OPTION VALUE="<?php echo $consulta=$objCliente->mostrar_client(); ?>" >97-ORD
  <OPTION VALUE="<?php echo $consulta=$objCliente->mostrar_client1(); ?>">31-EXT

3 respuestas

Respuesta
1
Bien te explico el problema, estás usando una acción de servidor(php) sobre una acción de cliente, y no funciona así. El código que tu escribas en PHP se ejecuta sí o sí al cargar la página por tanto ahí se está cargando la primera función que escribes si o sí da igual la opción que elija el usuario. Por ello lo que deberías hacer es tratar la opción que el usuario elija, es decir el VALUE del select name, en la siguiente página, si el usuario elije la opción 97 entonces en la página de destino haces:
if ( $_POST['ListeUrl'] == '97') then $consulta=$objCliente->mostrar_client();
if ( $_POST['ListeUrl'] == '31') then $consulta=$objCliente->mostrar_client1();
Respuesta
1
afortunadamente ando en perfecto estado de salud muchas gracias por preguntar;
te recominedo que imprimas sin usar el $consulta=, osea imprime asi
<?php echo $objCliente->mostrar_client1(); ?>
Muchas gracias por contestar y que bueno que este bien de salud es muy importante, bueno hice la prueba pero no responde el select name, ¿qué podrá ser?
Ok entonces vamos a darle el valor de la funciona una variable e imprimimos la variable.
<?php 
require('clases/cliente.class.php'); 
$objCliente=new Cliente; 
$var = $objCliente->mostrar_client();
$var2 = $objCliente->mostrar_client1();
?> 
<SELECT NAME="ListeUrl" SIZE=1 onChange="ChangeUrl(this.form)"> 
<OPTION SELECTED VALUE="">-Selecciona Sesion- 
  <OPTION VALUE="<?php echo $var; ?>" >97-ORD 
  <OPTION VALUE="<?php echo $var2; ?>">31-EXT
esto no funciona, entonces seria buena idea que mostraras el codigo de las funciones, pero .
Ok gracias este es código de las funciones
function mostrar_client(){
        if($this->con->conectar()==true){
            return mysql_query("SELECT * FROM mejoramiento WHERE RESPONSABLE='JESUS' AND SESION='97-ORD'");
        }
    }
function mostrar_client1(){
        if($this->con->conectar()==true){
            return mysql_query("SELECT * FROM mejoramiento WHERE RESPONSABLE='JESUS' AND SESION='31-EXT'");
        }
    }
que estan en cliente.class.php
el primer codigo esta en una pagina independiente al de las funciones que esta en cliente.class.php por eso lo del if($this->conectar()==true)
Ok
Si estas llamando a conectar, conectar() es por que esta en el mosmo php o estas heredando de otra clase, en cal quier caso, quítale el con.
        if($this->conectar()==true)
Respuesta
1
Asegúrate que existe la función ChangeUrl y que no está arrojando errores; puedes checkearlo con la pestaña "Consola" de FireBug (un complemento para Firefox, muy bueno para desarrollar este tipo de cosas).
Así a ojo "this.form" parece que no va a funcionar muy bien (al menos en el trozo de código que me pasas no hay ningún "form").

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas