Foros del Web » Creando para Internet » HTML »

enviar valor con <input type="image">

Estas en el tema de enviar valor con <input type="image"> en el foro de HTML en Foros del Web. Hola. Tengo una lista con ciertos valores y a la izquierda de cada valor un botón con una imagen de un lapiz (como en el ...
  #1 (permalink)  
Antiguo 09/08/2010, 10:17
Avatar de venom_mau  
Fecha de Ingreso: julio-2009
Mensajes: 152
Antigüedad: 8 años, 4 meses
Puntos: 2
Pregunta enviar valor con <input type="image">

Hola.

Tengo una lista con ciertos valores y a la izquierda de cada valor un botón con una imagen de un lapiz (como en el php my admin), para odificar el registro de esa fila.

He probado el código:
Código PHP:
.
<
input type='image' value=".$fila[$i]." src='edit.png'>

Este funciona en firefox, chrome e incluso safari, pero en ie 8 no funciona, no me envía el valor de esa fila, porqué será.

Tendré que usar un submit? Es que lo que yo quería era hacer el efecto del php my admin, donde puedes modificar o borrar registros sólo dando click en el botón (imágen) que quieres.

Gracias por su tiempo y respuestas, saludos.
  #2 (permalink)  
Antiguo 09/08/2010, 11:36
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años, 5 meses
Puntos: 1567
Respuesta: enviar valor con <input type="image">

venom_mau:
efectivamente es un bug en IE, tienes dos alternativas para solucionarlo
Código para input_image.php

Código PHP:
Ver original
  1. <?xml version="1.0" encoding="utf-8"?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  3. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  4. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es" >
  5. <head>
  6. <title>XHTML 1.0 Strict</title>
  7. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  8. </head>
  9. <body>
  10. <?php
  11. $fila1 = "valor_fila_uno";
  12. ?>
  13. <form id="uno" method="post" action="input_image.php">
  14. <p>
  15. <!--
  16. <input type="hidden" name="procesar" value="<?php echo "$fila1"; ?>" />
  17. -->
  18. <input type="image" src="imagen.png" alt="" name="enviar" />
  19. <!-- o va el input image con el input hidden o el button, habria que retocarlo con css -->
  20. <button name="procesar" value="<?php echo "$fila1"; ?>" type="submit"><img src="imagen.png" alt="" /></button>
  21. </p>
  22. </form>
  23. <div>
  24. <hr />
  25. <?php
  26. if(isset($_POST['procesar'])){
  27. echo $_POST['procesar'];
  28. }else{
  29. echo "nada";
  30. }
  31. ?>
  32. </div>
  33. </body>
  34. </html>


Creo que usar el input image + un campo hidden con el valor a pasar es más practico, te evitas el css para adaptar el button.
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #3 (permalink)  
Antiguo 09/08/2010, 11:56
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.547
Antigüedad: 15 años, 8 meses
Puntos: 1262
Respuesta: enviar valor con <input type="image">

Hola:

No entiendo eso de bug... cuando de las imágenes lo que importa son las coordenadas, y como mucho su nombre para diferenciarlas... si no interesan las coordenadas, tal vez sea mejor un tag button con una imagen en su interior...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 09/08/2010, 12:02
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años, 5 meses
Puntos: 1567
Respuesta: enviar valor con <input type="image">

caricatos:

Me refiero que en IE el imput image no hace el submit para el value que tenga definido, en tanto FF, opera, etc si lo hacen.
En mi ejemplo deje las dos posibilidades, lo del button ó agregar un input hidden con el valor a pasar
Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #5 (permalink)  
Antiguo 09/08/2010, 12:10
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.547
Antigüedad: 15 años, 8 meses
Puntos: 1262
Respuesta: enviar valor con <input type="image">

Hola:

La intención de los "type='image'" no es enviar un value sino enviar unas coordenadas... cosa que lamentablemente michos desconocen y relacionan ese input con un submit a secas... si importan las coordenadas, la opción es discriminar por el name; y si no importan (lo más habitual) es no usarlo para enviar datos, que para eso hay más controles.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 09/08/2010, 12:19
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años, 5 meses
Puntos: 1567
Respuesta: enviar valor con <input type="image">

Caricatos:
Gracias por el dato, bueno saberlo.
Habría que averiguar entonces porque firefox hace el submit ademas de enviar x e y

saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 09/08/2010, 20:23
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.547
Antigüedad: 15 años, 8 meses
Puntos: 1262
Respuesta: enviar valor con <input type="image">

Cita:
Iniciado por emprear Ver Mensaje
Caricatos:
Gracias por el dato, bueno saberlo.
Habría que averiguar entonces porque firefox hace el submit ademas de enviar x e y

saludos
No entiendo... submit lo hacen todos los navegadores... info

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 09/08/2010, 22:40
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años, 5 meses
Puntos: 1567
Respuesta: enviar valor con <input type="image">

Caricatos:

ahora me dejas con una gran incógnita

Creo que me equivoqué al usar la expresión "no hacen el submit"
quizás este ejemplo sea más explicito
http://foros.emprear.com/php/input_i...nput_image.php

dónde se puede apreciar como Firefox (Safari y Chrome) como si procesan el value definido en un input type="image" (que es lo que planteaba venom_mau en el post original
)
También lo probé con Opera y se comporta igual que en IE

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.

Última edición por emprear; 11/08/2010 a las 10:35
  #9 (permalink)  
Antiguo 10/08/2010, 10:04
Avatar de venom_mau  
Fecha de Ingreso: julio-2009
Mensajes: 152
Antigüedad: 8 años, 4 meses
Puntos: 2
Respuesta: enviar valor con <input type="image">

Gracias por los comentarios.

Así es, buscando más en internet supe que un input image envía las coordenadas de donde le des click, pero por que chrome, firefox y safari, si al input image le agrego un valor (value='yo'), este lo envía correctamente, comprobandolo previamente con un var_dump.

No así IE, que recibe las coordenadas de la imágen :(

Todo esto usando un input image como si fuera un botón de submit. Espero me esté explicando.

Lo del campo oculto (hidden), también lo probé, sólo que estos botones y campos ocultos los tengo dentro de un ciclo y siempre me daba como resultado el envío del último de los campos hidden.

Gracias de nuevo :)
  #10 (permalink)  
Antiguo 10/08/2010, 16:20
Avatar de tredio  
Fecha de Ingreso: noviembre-2008
Ubicación: Carabobo
Mensajes: 466
Antigüedad: 9 años
Puntos: 66
Respuesta: enviar valor con <input type="image">

por que no tratas con un boton normal?, o lo que quieres es obtener las coordenadas?. si lo haces solo para que aparezca la imagen puedes poner un boton normal y cambiarle el fondo con css.
  #11 (permalink)  
Antiguo 11/08/2010, 08:59
Avatar de venom_mau  
Fecha de Ingreso: julio-2009
Mensajes: 152
Antigüedad: 8 años, 4 meses
Puntos: 2
Respuesta: enviar valor con <input type="image">

No quería enviar las coordenadas, quería enviar un valor que obtengo de una base de datos, pero para darle presentación quería que el boton tuviera una imágen.

Pues como no me resulta ni lo del css, pues tuve que poner el botón (submit) con el valor de la base de datos que quería enviar :(

No tendrá muy buen aspecto, pero funciona, espero que para ie 9 ya no tenga esos errores, y trabaje a la par de firefox, safari y chrome...

Gracias por los comentarios :)
  #12 (permalink)  
Antiguo 11/08/2010, 10:09
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 10 años, 5 meses
Puntos: 1567
Respuesta: enviar valor con <input type="image">

venom_mau
Si al button que utilicé en mi ejemplo,

<button name="procesar" value="<?php echo "$fila1"; ?>" type="submit"><img src="imagen.png" alt="" /></button>

(ve mi post previo), le aplicás

style="border: 1px solid transparent;cursor: pointer;background-color: transparent;"

tendrá el mismo aspecto que la imágen y te procesará el value en todos los navegadores

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #13 (permalink)  
Antiguo 12/08/2010, 10:27
Avatar de venom_mau  
Fecha de Ingreso: julio-2009
Mensajes: 152
Antigüedad: 8 años, 4 meses
Puntos: 2
Respuesta: enviar valor con <input type="image">

Gracias emprear :D

Etiquetas: enviar
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 04:38.