Foros del Web » Programando para Internet » PHP »

envio de datos formularios

Estas en el tema de envio de datos formularios en el foro de PHP en Foros del Web. Hola a todos, Tengo el siguiente problema: Necesito transformar una imagen en un botón y que cuando se le pulse se envíe una imagen como ...
  #1 (permalink)  
Antiguo 28/01/2007, 13:40
 
Fecha de Ingreso: enero-2007
Mensajes: 4
Antigüedad: 17 años, 2 meses
Puntos: 0
envio de datos formularios

Hola a todos,

Tengo el siguiente problema: Necesito transformar una imagen en un botón y que cuando se le pulse se envíe una imagen como variable a una página php. Pues bien el script me funciona en Mozilla Firefox pero no en IE6.

Alguien puede ayudarme? Gracias.

Os pongo el código:

Código HTML:
<form action="./mostrar_imagen.php" method="post">
      <p>Prueba de un formulario con un imagen:</p>
      <p class="fin"> <input name="enviar" type="image" alt="Disponible"
 src="../o.gif" value="dom1_hum-wind_300_00.png" /></p>
    </form> 
Código PHP:
<?
if (isset($_POST['enviar'])) {
  
$imagen $_POST['enviar'];
  echo 
"Nombre de imagen: ".$imagen;
}
?>
  #2 (permalink)  
Antiguo 28/01/2007, 13:57
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: envio de datos formularios

Cuando lo haces en mozilla, esta es la informacion que recibes por POST:

Array
(
[enviar_x] => 15
[enviar_y] => 20
[enviar] => dom1_hum-wind_300_00.png
)

Mientras tanto en IE6:

Array
(
[enviar_x] => 15
[enviar_y] => 20
)

Esos valores numericos son las coordenadas de donde hjiciste click sobre la imagen... y como ves, internet explorer 6, a diferencia de mozilla, no trae el valor del campo en si, en este caso el campo enviar.

Una solucion podria ser que ademas del boton, coloques un campo oculto

Código HTML:
<form action="./mostrar_imagen.php" method="post"> <p>Prueba de un formulario con un imagen:</p> <p class="fin"> <input name="enviar" type="image" alt="Disponible"  src="../o.gif" value="dom1_hum-wind_300_00.png" /></p>  
<input type="hidden" name="nombre_imagen" value="dom1_hum-wind_300_00.png" />
</form> 

Código PHP:
<?
if (isset($_POST['nombre_imagen'])) {
  
$imagen $_POST['nombre_imagen'];
  echo 
"Nombre de imagen: ".$imagen;
}
?>

No se realmente si a ti te sirva la solucion, para el ejemplo que diste si... pero no se si fue un ejemplo completo de lo que deseabas

Saludos.
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #3 (permalink)  
Antiguo 29/01/2007, 16:13
 
Fecha de Ingreso: enero-2007
Mensajes: 4
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: envio de datos formularios

Gracias Fridureiks.

El problema que tengo es que tenfo una tabla y en cada celda está la imagen o.gif, y cada vez que pulso sobre una imagen tengo que enviar el nombre de una imagen diferente.

Y con este método tengo que llamar cada campo hidden de una forma diferente y en la página php un if para identificar que campo oculto hay que coger.

Me gustaríua saber si habría alguna forma que implique menos código para hacerlo.

Espero haberme explicado. Gracias de nuevo.
  #4 (permalink)  
Antiguo 29/01/2007, 17:21
 
Fecha de Ingreso: julio-2005
Ubicación: Buenos Aires, Argentina
Mensajes: 1.304
Antigüedad: 18 años, 9 meses
Puntos: 6
Re: envio de datos formularios

Solo debes enviar el nombre de la imagen? Si es asi, quiza esta sea una opcion:

Código PHP:
<a href="mostrar_imagen.php?nombre_imagen=dom1_hum-wind_300_00.png"><img src="dom1_hum-wind_300_00.png" /></a
* espero no haberme equivocado en ninguno tag html.

Código PHP:
<?
if (isset($_GET['nombre_imagen'])) {
  
$imagen $_GET['nombre_imagen'];
  echo 
"Nombre de imagen: ".$imagen;
}
?>
Saludos
__________________
Federico.

Mi página: www.jourmoly.com.ar
  #5 (permalink)  
Antiguo 29/01/2007, 21:39
Avatar de deet  
Fecha de Ingreso: mayo-2005
Ubicación: Córdoba - Argentina
Mensajes: 269
Antigüedad: 18 años, 11 meses
Puntos: 1
Re: envio de datos formularios

esta es otra alternativa a la que puso Fridureiks:

Código PHP:
<form method="post" name="form">
<
p>Prueba de un formulario con un imagen:</p>
<
class="fin"><input name="enviar" type="image" alt="Disponible" src="../o.gif" value="Submit" onClick="document.form.action='mostrar_imagen.php?image=dom1_hum-wind_300_00.png'; document.form.submit();" /></p>
 </
form
también puedes probar lo siguiente es un poco menos aparatosa a la anterior, no tiene formulario de por medio:

Código PHP:
<img src="../o.gif" onClick="window.location='mostrar_imagen.php?image=dom1_hum-wind_300_00.png'; " /> 
  #6 (permalink)  
Antiguo 30/01/2007, 12:29
 
Fecha de Ingreso: enero-2007
Mensajes: 4
Antigüedad: 17 años, 2 meses
Puntos: 0
Re: envio de datos formularios

Gracias a los dos. Vuestras respuestas me han servido de mucha ayuda.

Un saludo.
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 22:07.