PHP - no se envian datos en formulario

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

no se envian datos en formulario

Publicado por Alejandro (172 intervenciones) el 16/04/2020 11:31:53
buenos dias,

no sabia en que foro poner esto, si en php o en html, pero como no se cual es problema pues os lo pongo por aqui.
Resulta que tengo un formulario, tengo dos select normales y otros dos select que muestran un div abajo respectivamente. Un div contiene otro select y un cuadro textarea. Y el otro div solo input text. El caso es que el primer div no me envia los datos, le doy al boton de enviar y nada, el otro div si que los envia. A continuacion les dejo mi codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<form method="post" action="validardatosSituacionSocioEconomica.php?id_personal=<?php echo $filas['id_personal'] ?>" enctype="multipart/form-data">
    <p>
        <h3>Situación social</h3>
            <textpath>Estado civil:</textpath>
            <select name="estadoCivil">
 
                <option selected>--No seleccionado--</option>
                <option>Casado/casada</option>
                <option>Soltero/soltera</option>
                <option>Convive en pareja</option>
                <option>Divorciado/divorciada</option>
                <option>Viudo/viuda</option>
                <option>Pareja de hecho</option>
 
            </select>
 
            <textpath>Tipologia familiar:</textpath>
            <select name="tipologiaFamiliar">
 
                <option selected>--No seleccionado--</option>
                <option>Familia numerosa</option>
                <option>Familia monoparental</option>
 
            </select>
            <hr>
        <h3>Situación económica</h3>
 
            <label>Prestaciones:</label>
            <select name="prestaciones" id="prestaciones" onchange="divSelect(this)">
                <option value="mostrar">Si</option>
                <option value="ocultar" selected >No</option>
            </select>
 
             <div id="div_prestaciones">
 
                <label>Tipo:</label>
                <select name="tipoPrestacion" >
                    <option selected>--No seleccionado--</option>
                    <option>Prestacion por desempleo</option>
                    <option>Subsidio por desempleo</option>
                    <option>Discapacidad</option>
                    <option>Renta garantizada</option>
                    <option>Otros</option>
                </select>
                <label>Descripción:</label><textarea cols="45" name="desPrestacion"></textarea>
 
              </div>
 
              <textpath>Ayuda económica de la Mancomunidad:</textpath>
             <select name="ayudaEco" id="ayudaEco" onchange="divSelect(this)">
                <option value="mostrar">Si</option>
                <option value="ocultar" selected>No</option>
             </select>
                <div id="div_ayudaEco">
                    <textpath>Clase de ayuda:</textpath><input type="text" name="claseAyuda" required>
                    <label>Fecha:</label><input type="date" name="fechaAyuda" required><br><br>
                    <label>Objetivo:</label><textarea cols="40" name="objetivoAyuda" required></textarea >
 
                </div>
 
    </p>
    <p>
        <input type="submit" value="Enviar">
 
    </p>
</form>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
$id=$_GET['id_personal'];
$estadoCivil = $_POST['estadoCivil'];
$tipologiaFamiliar = $_POST['tipologiaFamiliar'];
 
$prestaciones = $_POST['prestaciones'];
$tipoPrestacion = $_POST['tipoPrestacion'];
$desPrestacion = $_POST['desPrestacion'];
 
$ayudaEco = $_POST['ayudaEco'];
$claseAyuda = $_POST['claseAyuda'];
$fechaAyuda = $_POST['fechaAyuda'];
$objetivoAyuda = $_POST['objetivoAyuda'];
 
 
$fecha= strtotime($fechaAyuda);
 
$fecha_formato_mysql = date("Y-m-d", $fecha);
 
 
//situacion social
 
if ($estadoCivil=="--No seleccionado--" && $tipologiaFamiliar!=="--No seleccionado--"){
 
 
    echo "No has seleccionado el estado civil <br>";
 
    $consulta = "UPDATE datos_personales SET tipologia_familiar='".$tipologiaFamiliar."' WHERE id_personal=".$id;
    $resultado = mysqli_query($GLOBALS['conn'], $consulta);
 
    echo "Tipologia familiar registrado<br>";
 
}else if ($tipologiaFamiliar=="--No seleccionado--" && $estadoCivil!=="--No seleccionado--"){
 
 
    echo "No has seleccionado la tipologia familiar<br>";
 
 
    $consulta = "UPDATE datos_personales SET estado_civil='".$estadoCivil."' WHERE id_personal=".$id;
    $resultado = mysqli_query($GLOBALS['conn'], $consulta);
    echo "Estado civil registrado<br>";
 
}else if ($estadoCivil=="--No seleccionado--" && $tipologiaFamiliar=="--No seleccionado--"){
 
    echo "No has seleccionado ni estado civil ni topologia familiar<br>";
 
 
}else if ($estadoCivil!=="--No seleccionado--" && $tipologiaFamiliar!=="--No seleccionado--"){
 
 
    $consulta = "UPDATE datos_personales  SET estado_civil='".$estadoCivil."', tipologia_familiar='".$tipologiaFamiliar."' WHERE id_personal=".$id;
    $resultado = mysqli_query($GLOBALS['conn'], $consulta);
    echo "Datos de situacion social registrados<br>";
 
}else{
 
    $error= mysqli_error($GLOBALS['conn']);
    echo $error;
 
 
}
 
//situacion economica
 
 
if($tipoPrestacion!=="--No seleccionado--"){
 
    $consulta = "INSERT INTO prestacion (tipo, descripcion, codigo_persona_prestacion) VALUES ('".$tipoPrestacion."','".$desPrestacion."','".$id."')";
    $resultado = mysqli_query($GLOBALS['conn'],$consulta);
 
    echo "Datos de prestación registrados<br>";
 
}else{
 
    //No sucede nada
}
 
 
// ayuda economica
 
if ($ayudaEco=="mostrar"){
 
 
    $consulta = "INSERT INTO ayuda_economica (clase, fecha, objetivo_ayuda, codigo_persona_ayuda) VALUES ('".$claseAyuda."','".$fecha_formato_mysql."','".$objetivoAyuda."','".$id."')";
    $resultado = mysqli_query($GLOBALS['conn'],$consulta);
 
        echo "Datos de ayuda económica registrados<br/>";
 
}else{
 
    //No sucede nada
 
}
 
 
//Para volver a la pagina de empleo
 
$subconsulta="SELECT * FROM datos_personales WHERE id_personal=".$id;
$resultadoSub=mysqli_query($GLOBALS['conn'],$subconsulta);
    while($filas=mysqli_fetch_array($resultadoSub)){
 
        echo "<a href='empleo.php?id_personal=".$filas['id_personal']."'>Volver</a>";
 
    }
 
cerrarBD();
?>

Gracias de antemano
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 Julio
Val: 2.007
Plata
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no se envian datos en formulario

Publicado por Julio (830 intervenciones) el 16/04/2020 11:48:37
Hola.

No sé exactamente si es el error o no porque creo que igual debería funcionar, pero no estoy seguro. De todas formas, coloca todos los <option> con un value correspondiente (como sí tiene el <select> "prestaciones" y el <select> "ayudaEco"). Y trabaja siempre mirando este value y no el texto que indicas en cada opción. Es posible que así te funcione bien. Lo de que esté dentro de un div o no, no influye en nada.

-----------------------------
Aprende la programación desde una perspectiva básica y simplista en Programación Básica
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: 336
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

no se envian datos en formulario

Publicado por Alejandro (172 intervenciones) el 16/04/2020 13:05:27
Vale ya lo he solucionado, era porque en los inputs de ayuda_economica tenia puesto el atributo "required". Pero no entiendo como eso puede afectar al resto de datos ??
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