Tengo un form con campos ocultos, y quiero que estos se envien al cargar la pagina, pero que el visitante no se entere, osea, que no se abra ninguna pagina.
Alguien sabe si se puede?
Gracias
| |||
Como hago esto? Tengo un form con campos ocultos, y quiero que estos se envien al cargar la pagina, pero que el visitante no se entere, osea, que no se abra ninguna pagina. Alguien sabe si se puede? Gracias |
| |||
Envialo con el evento onload <body onload="document.NombreForma.submit()"> y para que el visitante no se de cuenta has lo siguiente pon en la página un iframe escondido, es decir con width=0 height=0 etc... y en el formulario utiliza como target ese iframe <form name=forma action="script.cgi" target="NombreIFrame"> Última edición por matcruz; 29/08/2003 a las 15:19 |
| |||
Sniff, no me funciona, ya que el php se abre dos veces, una en el frame oculto, y despues, sin ninguna razon, se abre en toda la pagina, o sea que se abre dos veces... y la segunda es la que no me sirve. Alguna idea? Muchas gracias karon |
| |||
Que hace ese "php" como decis vos? por que en ves de trabajar con un iframe no trabajas con un frame comun y corriente? Buscaste si eso que a vos te sucede es un bug de la version de php que estas usando? Pues tal vez sea un error en tu programatura. edgardo |
| |||
Edgardo, el php, lo que hace, es tomar una variables que se encuentran el html, y enviarlas por mail, a mi casilla de correo... A ver, voy a explicar detalladamente.. El objetivo de esto, es saber, si alguien leyo un correo electronico... seria asi: (la idea es que solo funcione con webmail) Yo mando en email, a determinada persona, en el codigo HTML de este mail, llamo a un archivo PHP, que lo que hace, es tomar una variable que tambien esta en el HTML, s1, en s1 esta la direccion de correo electronico, de la persona que recibio el mail. La funcion del php, es procesar la variable s1, y enviarme un mail a mi, diciendo... "La persona " $s1 "leyo el mail enviado" La cosa, esta en que yo no quiero, que la persona que recibe el mail, sepa que yo me entero de cuando abre el mail.... entonces el php que procesa la informacion, no se tiene que ver... Para esto, hice lo que aqui me dijeron... use una pagina de dos marcos, uno es el cuerpo de el mesaje (A), y otro, es uno casi invisible (B) Cuando el mensaje llega, y lo abren, se ejecuta, entre otras, esta linea de codigo: <body onload="document.abcdef.submit()"> esta linea, lo que hace, es que ni bien se cargue el mail, se ejecuta el formulario, y se comunica con el PHP... y esta linea: <form name=abcdef action="maili.php" target="B"> y esta linea, le dice que el formulario, lo ejecute en el marco B, que es el marco oculto... El resultado de todo esto, es el siguiente.. Primero, se ejecuta a la perfeccion, ya que maili.php, se carga en el marco oculto, y luego de que funciono con el resultado esperado, ABRE maili.php en toda la pagina... esta parte, es la que no me sirve, y tampoco entiendo... ESTOS SERIAN LOS CODIGOS: La pagia de marcos: El marco A: (donde estaria el cuerpo del mail)
Código:
El marco oculto o semi invisible:<html> <head> <title>pruba</title> <base target="pie"> <style fprolloverstyle>A:hover {color: #E1E1E1; font-family: Arial; font-size: 8pt} </style> </head> <body topmargin="0" leftmargin="0" bgcolor="#FFFFFF" link="#333333" vlink="#333333" alink="#E1E1E1" text="#666666" onload="document.abcdef.submit()"> <form method="POST" target="B" action="maili.php" name="abcdef"> <input type="hidden" name="s1" value="[email protected]"> </form> <div align="left"> <table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2"> <tr> <td width="100%" style="border-top: 1px solid #C0C0C0; padding: 4"></td> </tr> </table> </div> </body> </html>
Código:
y por ultimo, el codigo que contiene los dos marcos:<html> <head> <title>Página nueva 7</title> <base target="_self"> </head> <body> </body> </html>
Código:
el codigo del php: (por si a alguien le interesa)<html> <head> <title>Pagina de marcos</title> </head> <frameset framespacing="0" border="false" frameborder="0" rows="*,18"> <frame name="A" src="arriba.htm" target="_self"> <frame name="B" scrolling="no" noresize target="A" src="abajo.htm"> <noframes> <body> <p>Esta página usa marcos, pero su explorador no los admite.</p> </body> </noframes> </frameset> </html> Código PHP: Bueno, ahi esta todo... si alguien sabe como solucionar el problema de que se abra DOS veces el php en vez de una.... que cante. Muchas gracias Karon. PD. Tambien estoy haciendolo de otra forma en php, sin marcos, pero no me funciona tampoco.. asi que a lo moderadores, por favor dejen el mensaje en HTML. Última edición por karon; 31/08/2003 a las 11:53 |