Foros del Web » Programando para Internet » PHP »

Acción de formulario...

Estas en el tema de Acción de formulario... en el foro de PHP en Foros del Web. Saludos! Tengo un formulario muy simple en PHP que al aceptar (submit) pasa una información a otra página en PHP y la guarda en una ...
  #1 (permalink)  
Antiguo 14/05/2010, 02:25
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 16 años, 4 meses
Puntos: 5
Acción de formulario...

Saludos!

Tengo un formulario muy simple en PHP que al aceptar (submit) pasa una información a otra página en PHP y la guarda en una base de datos, a través de uns sentencia en MySQL.

Sin embargo, me gustaría que esa acción se ejecute en la misma página PHP y no use dos para tal efecto. He visto que en principio, debo añadir el nombre del archivo PHP en "action" del formulario, pero cómo puedo decirle que al 'submit' se ejecute el resto del script?...

Aquí mi intento fallido:

Código PHP:
<form name="form" action="mi_actual_pagina.php">
<
input .....
</
form>

if (
submit) {
sql= ... sentencia sql ...

La idea es que esa segunda parte que guarda la información en la base de datos no se vea ni se ejecute sin haber clicado sobre el botón.

Gracias por vuestra ayuda.
__________________
Andrew :P
  #2 (permalink)  
Antiguo 14/05/2010, 03:29
Avatar de Heli0s  
Fecha de Ingreso: abril-2010
Mensajes: 789
Antigüedad: 9 años, 9 meses
Puntos: 40
Respuesta: Acción de formulario...

Pones un condicional donde se evalue si la variable de alguno de los datos que envías con el formulario existe.

Código PHP:
if(isset($_POST['NombreDeCualquierCampo'])){
    
consulta SQL
} else {
    
el formulario no ha sido enviado todav&#237;a


Un saludo
  #3 (permalink)  
Antiguo 14/05/2010, 03:37
 
Fecha de Ingreso: diciembre-2008
Ubicación: Vigo, Spain
Mensajes: 141
Antigüedad: 11 años, 1 mes
Puntos: 12
Respuesta: Acción de formulario...

Podrias intentar esto:

Código PHP:
Ver original
  1. <?php
  2.  
  3. if (!$_POST['nombre_del_input']) {
  4. //si no hay nada en esa variable, mostrar el formulario
  5.  
  6. ?>
  7.  
  8. <!--formulario-->
  9. <form method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
  10.     <table width="360" border="0" cellspacing="0" cellpadding="5">
  11.         Introduce algo: <input type="text" name="nombre_del_input">
  12.         <input type="submit" name="buscar">
  13.     </table>
  14. </form>
  15.  
  16. <?php
  17. }
  18. else{
  19.     echo "aqui estamos!";
  20. }
  21. ?>

No se si es lo que buscas, espero que te sirva.

Saludos.
  #4 (permalink)  
Antiguo 14/05/2010, 04:13
Avatar de andrewp  
Fecha de Ingreso: agosto-2003
Ubicación: Barcelona
Mensajes: 1.160
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Acción de formulario...

Hey... Gracias por vuestra ayuda... Era justo esa sentencia negativa al principio de la página lo que me hacía falta. Lo único que he cambiado es que en vez de:

Código PHP:
<form method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
he puesto el nombre actual de la página php:

Código PHP:
<form method="post" action="my_pagina.php"
Funciona!... Gracias!

POST SOLUCIONADO
__________________
Andrew :P

Etiquetas: formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 21:21.