[SOLUCIONADO] Problema con form

Iniciado por ch1n0, Mayo 31, 2011, 11:29:20 PM

Tema anterior - Siguiente tema

0 Miembros y 1 Visitante están viendo este tema.

Mayo 31, 2011, 11:29:20 PM Ultima modificación: Marzo 22, 2014, 02:18:20 PM por Expermicid
Hola a gente del foro.

Bueno tengo un problema. tengo un form en el cual tengo 2 submit. por ej. si hace click en el submit1 que valla a pag1 o si hace click en el submit2 que valla a pag2. pero nose como hacerlo. porq el form tien un solo action xD. podria hacerlo con javascript o no?

Saludos.

Dame el código de tu form, supondre que es asi:

index.html
Código: html

<form action="revisa.php" method="POST">
Pagina 1 <input type="submit" name="pag1" /><br />
Pagina 2 <input type="submit" name="pag2" /><br />
</form>


revisa.php
Código: php

<?php
if(isset($_POST['pag1'])){
  echo '<META HTTP-EQUIV="refresh" CONTENT="0; url=pagina1.php">';
}elseif(isset($_POST['pag2'])){
  echo '<META HTTP-EQUIV="refresh" CONTENT="0; url=pagina2.php">';
}else{
  echo 'No has enviado el formulario';
}
?>


Como te darás cuenta el submit tiene el atributo name, con este podemos procesar la información a nuestro antojo; espero entiendas si no responde en este hilo.
Cada vez que me das Karma me motivas

gracias. el codigo funciona pero al usarlo en mi pag tengo un error, tengo que pasar unas cuantas variables pero por alguna razon siempre envia los datos de la ultima fila de mi tabla.

Código: php

<form name="form1" id="borrar" action="./revisar.php" method="post" enctype="multipart/form-data">
<?php
for ($i = 0; $i < $num; $i++) {
        echo "<tr> <td> <input name='titulo' value='$titulo[$i]' type='hidden'>";
echo $titulo[$i];
echo "</td> <td> <input name='fecha' value='$fecha[$i]' type='hidden'>";
echo $fecha[$i];
        echo("<input type='hidden' name='idramo' value='$idramo'>");
echo("<input type='hidden' name='rut' value='$rut'>");
echo "</td> <td> <a href='verApunte.php?fecha=$fecha[$i]&codAsi=$codAsi[$i]'> Ver </a> </td> <td> <input name='pag1' type='submit' value='Eliminar'> </td> <td> <input name='pag2' type='submit' value='Editar'></td> </tr>";
}
?>
</form>


pagina revisar.php // por ahora esta asi
Código: php

<?php
$fecha = $_POST['fecha'];
$titulo = $_POST['titulo'];
$idramo = $_POST['idramo'];
$rut = $_POST['rut'];
echo $fecha;
echo "<br>";
echo $titulo;
echo "<br>";
echo $idramo;
echo "<br>";
echo $rut;
echo "<br>";/*
if(isset($_POST['pag1'])){
  echo '<META HTTP-EQUIV="refresh" CONTENT="0; url=eliminarApunte.php?fecha=$fecha&titulo=$titulo&idramo=$idramo&rut=$rut">';
}elseif(isset($_POST['pag2'])){
  echo '<META HTTP-EQUIV="refresh" CONTENT="0; url=editarApunte.php">';
}else{
  echo 'No has enviado el formulario';
}*/
?>


y me muestra siempre los datos de la ultima fila, aunque aprete el primer boton de la tabla. :(

Gracias por tu ayuda :)

Claro que te enviará siempre el último, ¿por qué?, porque esta dentro de un bucle for y todos tienen el mismo nombre (atributo name), por eso siempre te mostrará lo que tenga el último atributo, dame mas detalles de lo que quieres hacer y te soluciono, saludos.
Cada vez que me das Karma me motivas

Sorry por no responder antes, pero ya lo solucione, al final ise varios botones tipo submit y puse esto onclick="document.form.setAttribute('action','./pag1.php).

pero muchas gracias por tu interes Saludos.