PHP - necesito ayuda para pasar un parametro

 
Vista:
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Nicolas (5 intervenciones) el 03/09/2014 13:25:17
Hola Amigos, estoy dando mis primerisimos pasos en php y me he metido en un lio que no se como salir.

Tengo una tabla de 20 elementos con un link para cada uno, este link abre un popup donde se carga un jpg y la opción de descarga de un pdf.
No se como hacer para que cuando se haga click en el link correspondiente al 2, se envié esa información y se cambie en el div modal el 1.jpg por 2.jpg, asi este carga esa informacion. y asi mismo deberia hacer con los 20 items

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test</title>
</head>
 
<body>
<table border="0" cellpadding="3" cellspacing="0" id="flattab" width="640">
<tbody>
  <tr>
    <td><strong>APPARTAMENTO</strong></td>
    <td><strong>LOCALI</strong></td>
    <td><strong>SUL/m<sup>2</sup>*</strong></td>
    <td><strong>TERRAZZA</strong></td>
    <td><strong>GIARDINO</strong></td>
    <td><strong>PREZZO</strong></td>
    <td><strong>SCHEDA PDF</strong></td>
  </tr>
  <tr class="rowog">
    <td colspan="7"><strong>Piano terra</strong></td>
    </tr>
  <tr class="rowog" data-ogid="01">
    <td>1</td>
    <td>4&#189; - 5&#189;</td>
    <td>127,50 m<sup>2</sup> </td>
    <td>45 m<sup>2</sup></td>
    <td>60 m<sup>2</sup></td>
    <td>790.000 - Chf</td>
    <!-- en este caso deberia enviar a la div modal el numero 1 -->
    <td align="right"><a href="#modal" class="btn go"><img src="../images/pdf_icon.gif" /></a></td>
  </tr>
    <tr class="rowog" data-ogid="02">
    <td>2</td>
    <td>4&#189; - 5&#189;</td>
    <td>125,00 m<sup>2</sup></td>
    <td>40 m<sup>2</sup></td>
    <td>20 m<sup>2</sup></td>
    <td>750.000 - Chf</td>
     <!-- en este caso deberia enviar a la div modal el numero 2 -->
    <td align="right"><a href="#modal" class="btn go"><img src="../images/pdf_icon.gif" /></a></td>
  </tr>
    <tr class="rowog" data-ogid="03">
    <td>3</td>
    <td>3&#189;</td>
    <td>92,50 m<sup>2</sup></td>
    <td>40 m<sup>2</sup></td>
    <td>20 m<sup>2</sup></td>
    <td>585.000 - Chf</td>
     <!-- en este caso deberia enviar a la div modal el numero 3 -->
    <td align="right"><a href="#modal" class="btn go"><img src="../images/pdf_icon.gif" /></a></td>
  </tr>
</tbody></table>
 
<!-- -->
<div id="modal">
<div class="modal-content">
<div class="header"><h2><table border="0" cellspacing="5" width="100%">
  <tr>
  <!-- aqui esta el numero 1 (1.pdf), pero la proxima sera el 2 y asi sucesivamente -->
    <td align="left"><a href="1.pdf"><img src="../images/download.png" width="23" height="23" /></a></td>
    <td align="center"><a id="previousLink" href="#"><img src="../images/forward.png" width="23" height="23" /></a></td>
    <td align="right"><a href="#" class="btn"><img src="../images/close.png" width="23" height="23" /></a></td>
  </tr>
</table></h2></div>
 
<div class="copy">
 <!-- aqui esta el numero 1 (1.jpg), pero la proxima sera el 2 y asi sucesivamente -->
<img src="img/photos/1.jpg" width="732px"  />
</div></div></div>
 
</body>
</html>
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Ignacio (15 intervenciones) el 03/09/2014 19:14:26
Yo lo haría de la siguiente forma:

Crear una funcion en JavaScript, que reciba dos parámetros:
-La ruta del documento pdf: "1.pdf"
-La rutade la imagen en formato jpg: "img/photos/1.jpg".

Esta función modificará las rutas del documento pdf y de la imagen jpg del div "modal-content". Luego, para llamar a esta función, habría que añadir a las etiquetas <a> de los 20 elemento el evento onlick.

No he probado el código, así que podría tener fallos, pero lo importante es la idea.


Si no sabes JavaScript, la función sería algo así como
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function modificarModal (rutaDocumentoPDF, rutaImagenJPG)
{
// obtener los elementos a modificar
// el primer elemento a modificar será la etiqueta <a> donde irá la dirección del documento pdf
 var elementoEnlace = document.getElementById ("documentoPDF");
// el segundo elemento a modificar será la etiqueta <img> donde irá la imagen jpg
 var elementoImagen = document.getElementById ("imagenJPG");
 
// modificar los elementos
// modificación del primer elemento, el enlace
elementoEnlace.href = rutaDocumentoPDF;
// modificación del segundo elemento, la imagen
elementoImagen.src = rutaImagenJPG;
}



Código HTML a cambiar dentro del div "modal-content".
Tendrías que añadir un atributo id a la etiqueta <a> que contendrá la dirección del documento PDF y a la etiqueta <img> que contendrá a la imagen, yo les he puesto documentoPDF e imagenJPG respectivamente.
1
2
<a  id = "documentoPDF" href="1.pdf"><img src="../images/download.png" width="23" height="23" /></a>
<img  id = "imagenJPG" src="img/photos/1.jpg" width="732px"  />


Código HTML a cambiar en cada enlace de los 20 elementos
Añadir evento onclick
1
2
3
<a href="#modal" class="btn go" onclick = "modificarModal ('1.pdf', 'img/photos/1.jpg')" ><img src="../images/pdf_icon.gif" /></a>
<a href="#modal" class="btn go" onclick = "modificarModal ('2.pdf', 'img/photos/2.jpg')" ><img src="../images/pdf_icon.gif" /></a>
<a href="#modal" class="btn go" onclick = "modificarModal ('3.pdf', 'img/photos/3.jpg')" ><img src="../images/pdf_icon.gif" /></a>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Nicolas (5 intervenciones) el 03/09/2014 19:28:41
Muchisimas gracias por responder, lo probe y no funciona, pero debe ser algo minimo me imagino, por que la idea que me decis es bastante clara. mi duda es en que parte reemplaza por ejemplo solo la imagen
<img id="imagenJPG" src="img/photos/1.jpg" width="732px" />
por
<img id="imagenJPG" src="img/photos/2.jpg" width="732px" />

osea, en que parte de la funcion es donde dice que cambie el src por el otro.

mas que agradecido por la ayuda
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Ignacio (15 intervenciones) el 03/09/2014 19:53:43
En la línea donde pone
1
elementoImagen.src = rutaImagenJPG;
Es donde tomas la etiqueta <img> y cambias el contenido de su atributo src, este atributo es el que tiene la ruta de la imagen que aparece en esta etiqueta.

¿Te da algún tipo de error?

Escribe como te ha quedado el código después de modificarlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Nicolas (5 intervenciones) el 03/09/2014 20:11:01
Sos un genio!!! funciona a la perfeccion. llevaba 2 dias sin encontrar solucion a esto
te agradezco muchisimo, me sacaste de un problemon
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Nicolas (5 intervenciones) el 10/10/2014 21:41:57
Ignacio, como estas? te puedo molestar otra vez con un tema parecido, te juro que me puse a investigar en el ejemplo anterior, pero no puedo adaptarlo.
saludos
Nicolas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Ignacio (15 intervenciones) el 11/10/2014 00:11:07
Hola Nicolás, dime en qué te puedo ayudar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Nicolas (5 intervenciones) el 11/10/2014 00:15:25
Muchisimas gracias por responder.
es algo similar al anterior (no aprendo nunca, je) es este wsf que lo tengo que pasar a html
http://www.grupohelvetia.tuars.com/map/deutschland_plz_2014.swf

yo cree el mapa de imagenes y trate de adaptar lo que me habias pasado la ves anterior, pero no puedo conseguirlo.
se tendria que seleccionar el estado y abajo en una div se cargarian los datos de ese estado.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<body>
<img src="http://www.grupohelvetia.tuars.com/map/map.png" width="352" height="396" usemap="#Map" border="0" />
<map name="Map" id="Map">
   <area shape="poly" coords="122,5,144,10,147,11,152,6,165,13,163,17,167,19,164,26,171,26,169,35,176,28,188,34,197,30,199,39,191,46,193,51,202,49,212,53,214,48,225,50,228,62,213,70,230,83,208,89,228,92,220,99,205,99,189,109,179,108,173,102,166,105,159,119,148,111,157,96,158,90,154,86,163,81,163,73,151,70,145,57,132,55,130,41,129,34,123,36,123,29,133,27,132,21,122,5" href="#modal" class="btn go" onclick = "modificarModal ('texto 01', 'texto 02')" />
 
 
  <area shape="poly" coords="120,361,135,367,149,377,160,376,163,372,178,389,187,372,202,374,203,367,197,364,197,346,214,328,204,306,189,300,174,299,155,311,138,313,133,322,125,324,120,345,119,361" class="flatshape" id="02" />
  <area shape="poly" coords="117,362,108,371,88,372,82,363,86,338,107,301,66,292,44,273,62,267,86,253,101,265,132,278,150,263,165,271,177,297,157,308,136,311,130,318,122,328,117,346,117,362" class="flatshape" id="03"/>
 
  <area shape="poly" coords="204,379,219,378,245,368,264,365,278,375,281,363,267,343,288,330,292,317,301,319,303,304,286,294,271,290,254,296,244,311,240,303,219,298,206,304,219,327,199,347,200,362,206,368,204,379" class="flatshape" id="04"/>
  <area shape="poly" coords="241,236,255,253,250,260,261,273,278,288,267,288,255,292,245,304,236,299,223,296,209,300,203,303,181,297,169,275,157,261,170,252,163,245,159,236,166,227,185,230,187,222,214,225,223,231,233,230,242,235" class="flatshape" id="05" />
  <area shape="poly" coords="145,109,154,97,154,90,151,85,159,80,159,75,149,72,142,62,129,59,117,63,115,71,104,67,101,62,61,76,58,83,65,91,64,107,53,110,55,120,66,121,70,135,82,149,110,146,117,143,116,129,110,122,128,121,136,103,144,109" class="flatshape" id="06" />
  <area shape="poly" coords="217,42,230,39,258,25,276,38,286,49,299,58,306,78,303,93,300,102,314,112,316,121,308,126,292,122,263,121,246,113,234,111,231,121,224,115,216,118,203,117,198,107,206,101,219,102,232,92,220,89,236,86,221,71,229,65,229,52,223,46" class="flatshape" id="07" />
  <area shape="poly" coords="68,140,77,150,91,151,102,150,110,165,117,160,123,164,123,176,120,188,106,195,91,203,76,186,65,171,65,163,50,157,60,152,58,148,67,141" class="flatshape" id="08" />
  <area shape="poly" coords="36,155,62,164,64,174,73,185,73,202,44,224,31,207,35,200,31,195,42,179,35,155" class="flatshape" id="09" />
  <area shape="poly" coords="44,271,82,253,78,240,87,231,98,218,95,205,89,205,77,189,77,202,45,226,46,233,38,239,36,252,48,260" class="flatshape" id="10" />
  <area shape="poly" coords="81,242,84,250,93,256,114,268,131,275,150,262,166,251,158,241,157,232,164,226,167,220,164,209,169,198,168,189,160,182,152,183,155,173,149,169,141,180,129,175,124,188,98,203,102,218" class="flatshape" id="11" />
  <area shape="poly" coords="170,215,170,225,180,226,185,217,216,223,232,227,237,212,242,189,234,179,242,173,262,150,253,145,263,142,272,124,262,124,236,114,233,123,224,118,218,120,205,120,198,117,197,127,201,133,199,147,188,149,187,159,191,168,180,173,167,182,172,191,170,205" class="flatshape" id="12" />
  <area shape="poly" coords="236,229,247,238,254,229,270,225,311,200,310,191,319,193,324,201,331,200,335,180,332,169,318,152,321,144,315,127,309,129,300,126,288,125,274,124,266,143,262,154,239,179,244,186" class="flatshape" id="13" />
  <area shape="poly" coords="138,107,157,121,161,122,166,111,172,106,179,111,194,110,194,122,197,131,196,144,185,149,186,165,170,176,159,179,156,170,148,166,139,176,125,174,125,161,116,156,111,160,108,150,120,147,120,129,117,125,132,124" class="flatshape" id="14" />
</map>
 
<div>Contenido</div>
 
</body>
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Ignacio (15 intervenciones) el 11/10/2014 16:12:11
Deberías de cambiarle el nombre a la función en JavaScript, ya que esta vez lo que estás cambiando es el contenido (tarjetas) de un contenedor (en este caso solo contiene tarjetas), por ejemplo un nombre podría ser modificarContenedorTarjetas (siempre intenta usar verbos para las funciones como por ejemplo: modificar, borrar, insertar, etc), después tienes que poner un id al div contenedor, por ejemplo contenedorTarjetas, para poder llamarlo desde la función JavaScript y modificarlo. Todo lo que tienes que hacer es muy parecido a la función que vimos en la anterior aplicación con la función modificarModal, lo que cambia ahora es, que si quieres escribir texto dentro de un div, tienes que usar el método innerHTML del elemento div (al igual que usaste elementoEnlace.href y elementoImagen.src, pero esta vez elementoDiv.innerHTML = "texto").

Creo que con lo que te he comentado y lo visto anteriormente en la otra aplicación, no tendrás problemas para hacerlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

necesito ayuda para pasar un parametro

Publicado por Ignacio (15 intervenciones) el 11/10/2014 16:36:34
¿Qué programa estás usando para hacer los polígonos para marcar las áreas?
Aquí puedes ver como se hacen en el programa GIMP
y en Dreamweaver
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar