Foros del Web » Programando para Internet » PHP »

ayuda con un formulario

Estas en el tema de ayuda con un formulario en el foro de PHP en Foros del Web. tengo un formulario con 3 botones <input type="submit" name="insertar" value="insertar"> <input type="submit" name="borrar" value="borrar"> <input type="submit" name="modificar" value="modificar"> y un formulario q llama a otra ...
  #1 (permalink)  
Antiguo 27/04/2004, 09:54
 
Fecha de Ingreso: abril-2004
Mensajes: 14
Antigüedad: 20 años
Puntos: 0
ayuda con un formulario

tengo un formulario con 3 botones
<input type="submit" name="insertar" value="insertar">
<input type="submit" name="borrar" value="borrar">
<input type="submit" name="modificar" value="modificar">


y un formulario q llama a otra pagina en php pasando el numero del registro elegido para modificar o eliminar en la base de datos
<form method="post" action="procesa.php">

mi pregunta es se puede recogar de alguna manera el boton pulsado para q este dependiendo de su valor haga una parte del codigo o otro o sino se puede hacer asi si existe alguna forma de q dependiendo del boton pulsado lo mande a una o otra pagina para q esta ya realiza el codigo necesario

helpppppppp

gracias x todo
  #2 (permalink)  
Antiguo 27/04/2004, 10:11
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Así como lo tienes .. en PHP recibiras una variable de nombre igual al botón (name= ..) que pusistes en la definición de esos botones en su HTML

Puedes basarte en la existencia de esa variable para hacer una u otra acción:

Código PHP:
<?
if (isset($_POST['insertar'])){
// haces lo que corresponda para insertar ...
} elseif (isset($_POST['borrar'])){
// haces lo que corresponda para borrar
} elseif (isset($_POST['modificar'])){
// haces lo que corresponda para modificar
} else{
echo 
"error . .no se seleccionó ninguna acción";
}
Personalmente, no me agrada esa forma de controlar las "acciones" ya que un ligero cambio en el nombre (que se muestra) del motor . .nos afecta en el código .. (icluido espacios que uses debes tenerlo en cuenta en el IF ..)

Yo suelo usar javacript (si realmente es necesario usar botones) para cambiar el valor de una variable "hidden" que me llevará mi "accion" a realizar:

Código PHP:
<form action="nose.php" method="post" name="formulario">
<
input type="hidden" name="accion" value="">

<
input type="button" name="  Borrar  " onClick="document.formulario.accion.value='borrar'>

<input type="
button" name="  Modificar  " onClick="document.formulario.accion.value='modificar'">

</form> 
y en mi "nose.php" .. gestiono sólo la variable "accion" bajo un simple switch() .. así se hace más cómodo la lectura del código.

Código PHP:
switch($_POST['accion']){

case 
"borrar":
//lo que sea para borrar
break;

case 
"modificar":
//lo que sea para modificar
break;


default:
   echo 
"no hay acción seleccionada";


Con la misma técnica javascript . .se podría hasta cambiar el "action" que apunta el formulario y hacer scripts (páginas) independientes si se requiere para cada proceso ...

Un saludo,

PD: Javacript no es mi fuerte . así que si me equivoqué en algo .. disculpen..
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.

Última edición por Cluster; 27/04/2004 a las 10:14
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 09:20.