PHP - php en html

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

php en html

Publicado por Alejandro (172 intervenciones) el 30/04/2020 13:51:49
vereis tengo un problema a la hora de introducir php en el action de un form. Os dejo el codigo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 
session_start();
 
include("conexion.php");
 
$id=$_GET['id_personal'];
 
?>
 
<form method="post" action="eliminar_area.php?id_personal=<?php echo $id ?>">
 
<input type="submit" name="eliminarEmpleo" value="Eliminar ">
 
</form>
 
<?php
 
cerrarBD();
 
?>

Asi como esta, sale en id_personal= '%27' y tendria que ser 1.

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

php en html

Publicado por Antonio (1 intervención) el 30/04/2020 14:35:18
Corri el codigo y no me dio ningun problema (comente la linea 5, 19). Revisa como estas pasando el $_GET['id_personal'], es posible que estes pasando ' en la url, ya que esa comilla es el equivalente a %27
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

php en html

Publicado por Alejandro (172 intervenciones) el 30/04/2020 14:59:15
se ha solucionado pero ahora no pasa ningun id. De hecho me lleva a la misma pagina pero sin identificador. La verdad no se que esta pasando
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 javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php en html

Publicado por javier (547 intervenciones) el 01/05/2020 21:24:44
pasa la id en un campo oculto del form y la recibes en el otro archivo por el metodo POST

1
2
3
4
5
6
7
8
9
10
11
<form method="post" action="eliminar_area.php">
 
<input type="hidden" name="id" value="<?php echo $id ?> ">
<input type="submit" name="eliminarEmpleo" value="Eliminar ">
 
</form>
 
//y en el otro archivo la recoges asi
 
$id= $_POST['id'];
echo $id;

Por que no veo sentido que uses un formylario por el metos POST y despues quieras enviar la id en
1
<form method="post" action="eliminar_area.php?id_personal=<?php echo $id ?>">

si no forma un enlace

1
2
3
4
5
6
<a href="eliminar_area.php?id_personal=<?php echo $id ?>">enviar id </a>
 
//y en el otro archivo recogela por GET
 
$id = $_GET['id_personal'];
echo $id;
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

php en html

Publicado por Alejandro (172 intervenciones) el 04/05/2020 10:00:09
He probado a pasarlo con input hidden pero sigue haciendo lo mismo, sale el id_personal sin valor...
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 javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php en html

Publicado por javier (547 intervenciones) el 04/05/2020 10:23:55
hola,

a ver si es que ya te viene la variable vacia.

hazle un echo antes de el formulario a ver que valor tiene.

1
echo $id=$_GET['id_personal'];


mira este ejemplo sencillo:

1
2
3
4
5
6
7
<?php
 
$id = 1;
//ahora el formulario completo, yo solo te pongo el campo oculto
?>
 
<input type="hidden" name="id" value="<?php echo $id ?> ">

si en el archivo que recibes la variable haces:

1
2
3
4
5
6
7
<?php
 
$id = $_POST['id'];
 
echo $id;
 
?>

eso te imprime si o si, 1 en pantalla.

Un saludo
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

php en html

Publicado por Alejandro (172 intervenciones) el 04/05/2020 10:57:48
efectivamente, siendo por POST o por GET me dice variable indefinida en la pagina de validacion.

Yo lo que quiero es que al enviar el formulario me muestre un div diciendo que si de verdad quiere eliminar al usuario. He incluir un formulario con un SI y un NO, y este formulario que se valide en esa misma pagina.

La pagina de validacion la he formado asi:

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
<?php
 
session_start();
include("conexion.php");
 
$id=$_GET['id_personal'];
 
$eliminarEmpleo = (isset($_POST['eliminarEmpleo']))?$_POST['eliminarEmpleo']:"";
$eliminarFormacion = (isset($_POST['eliminarFormacion']))?$_POST['eliminarFormacion']:"";
$eliminarConecta = (isset($_POST['eliminarConecta']))?$_POST['eliminarConecta']:"";
 
 
if ($eliminarEmpleo){
 
    $select = "SELECT * FROM datos_personales WHERE id_personal=".$id;
    $result = mysqli_query($GLOBALS['conn'],$select);
    $fila = mysqli_fetch_array($result);
 
    echo "<div>Vas a eliminar a ".$fila['nombre']." ".$fila['apellido1']." ".$fila['apellido2']." del Area de Empleo</br>
            ¿Estas seguro de que quieres eliminar?";
 
    if(isset($_POST['si'])){
 
        //Aqui todos los DELETE
 
        echo "Persona eliminada de Empleo</br>
        <a href = listar_usuarios.php'>Volver</a>";
 
 
    }else{
 
 
 
    }
 
?>
        <form method="post" action="<?php echo htmlentities($_SERVER['PHP_SELF']);?>">
 
            <input type="submit" name="si" value="Si">
            <input type="submit" name="no" value="No">
 
        </form>
 
<?php
 
        echo "</div>";
 
}
 
cerrarBD();
 
 
?>

Pero cuando le doy a SI me dice que la variable $id esta indefinida y lo no entiendo porque en la URL ahora si que me aparece el valor de id
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 javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php en html

Publicado por javier (547 intervenciones) el 04/05/2020 11:06:24
ok error mio,

hazlo asi y no te saldrá esa notificación, que no es importante:


1
2
3
4
5
6
7
8
<?php
 
$id = '';
$id = $_POST['id'];
 
echo $id;
 
?>
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

php en html

Publicado por Alejandro (172 intervenciones) el 04/05/2020 11:17:05
si que me muestra el valor, te he dejado un comentario antes de tu respuesta con el metodo GET.
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 javier
Val: 1.542
Bronce
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

php en html

Publicado por javier (547 intervenciones) el 04/05/2020 11:25:23
no te recomiendo hacer esa validación en el mismo archivo, pero eso como te vaya mejor.

para hecer que salga una ventana emergente habras de usar JavaScript (jQuery, AJAX) o si no haz otro archivo PHP intermedio donde le preguntas si quiere o no eliminar y segun la respuesta haces una cosa u otra.

espero haberte orientado.

Un saludo
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

php en html

Publicado por Alejandro (172 intervenciones) el 04/05/2020 11:51:33
Ya era por evitar hacer mas paginas, lo tenia pensado como ultimo recurso. Gracias de todas formas ;)
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