PHP - Llamada a función onchange

 
Vista:
sin imagen de perfil

Llamada a función onchange

Publicado por Daniel (2 intervenciones) el 29/12/2021 13:29:26
Hola,

En mi página php he creado una lista desplegable y quiero que cuando se seleccione un elemento de la lista se llame a una función que hay en otro archivo. Para hacer las pruebas quiero simplemente que imprima por pantalla un texto indicando "Seleccion detectada" pero no consigo que esto suceda.
No se si es porque no se está llamando a la función, o bien, porque no como mandar imprimir el texto desde la función, que está en otro archivo.
Aquí os dejo los archivos.

Contenido del index php. Vease que se usa el metodo POST, y el contenido de onchange es la función charSelected.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<html>
<head>
  <title>Prueba de PHP</title>
 </head>
 <body>
 
 <form id="despPers" action="despChar.php" method="POST">
    <select name="nomChar" onchange="charSelected()">
    <?php
    include("despChar.php");
    initDespChar();
    ?>
    </select><br>
</form>
 
</body>
</html>

Aquí despChar.php. El initDespChar funciona bien puesto que la lista la rellena con los elementos de la base de datos correctamente. En la función charSelected he probado tanto a hacer un return como un echo y en ningún caso consigo que aparezca nada.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?php
    function initDespChar(){
 
        include("conection.php");
        echo '<option value="0">Character</option>';
        $con=conectar();
        $sql = "SELECT * FROM Personajes";
        $result = mysqli_query($con, $sql);
        while($row = mysqli_fetch_array($result)) {
          echo '<option value="'.$row["Character_id"].'">'.$row["Character_name"].'</option>';
        }
        $con->close();
    }
 
    function charSelected(){
        return "Selección detectada";
    }
 
 ?>

¿Se les ocurre que puedo estar haciendo mal?
Muchas gracias!
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 Alejandro
Val: 1.634
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Llamada a función onchange

Publicado por Alejandro (838 intervenciones) el 29/12/2021 17:46:27
  • Alejandro se encuentra ahora conectado en el
  • chat de PHP
No entiendes la lógica de Cliente-Sevidor.
Javascript se ejecuta en el Cliente y PHP en el Servidor.
Javascript no interpreta código PHP pero con AJAX puedes hacer peticiones para que el servidor las ejecute.
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

Llamada a función onchange

Publicado por Daniel (2 intervenciones) el 29/12/2021 23:16:52
Sí, estoy muy verde en estas cosas.
Gracias por la información.
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