Foros del Web » Programando para Internet » PHP »

Variables pasadas por GET que no deberian estar alli

Estas en el tema de Variables pasadas por GET que no deberian estar alli en el foro de PHP en Foros del Web. Hola señores, me pasa una situacion curiosa: Tengo un site en el que cada comentario luego de validado genera un archivo XML que imprimo con ...
  #1 (permalink)  
Antiguo 10/04/2010, 13:14
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Variables pasadas por GET que no deberian estar alli

Hola señores, me pasa una situacion curiosa:

Tengo un site en el que cada comentario luego de validado genera un archivo XML que imprimo con PHP. De manera que el site no lee los comentarios directo de la BD, sino del XML.

Todo funciona muy bien, pero luego de mas de 400 comentarios me veo forzado a crear una paginacion para acelerar la carga de las paginas (los comentarios se imprimen en el footer de todas las paginas). Tengo dos botones siguiente-anterior de tipo <input type="image"> para pasar entre paginas que envian con get la siguiente url:

http://lapagina.com/index.php?ppf=0&ppt=9&x=6&y=23

Las variables que paso unicamente son "ppf=0&ppt=9" y de ninguna manera "x=6&y=23". Haciendo algunas pruebas entendi que los valores X y Y son donde di click en el boton.

Como puedo detener el envio de esas variables adicionales ??

Esto es el formulario completo:

Código PHP:
<form method="get" action="<?=$_SERVER['PHP_SELF']?>">
<input type="hidden" name="ppf" value="0" />
<input type="hidden" name="ppt" value="9" />
<input type="image" id="comPrv" src="images/bot_prv.png" width="26" height="26" alt="Anteriores" title="Anteriores" />
</form>
__________________
JuniHH
- Mi blog
- Mi portafolio

Última edición por junihh; 10/04/2010 a las 13:19
  #2 (permalink)  
Antiguo 10/04/2010, 13:25
 
Fecha de Ingreso: diciembre-2009
Mensajes: 612
Antigüedad: 14 años, 4 meses
Puntos: 16
Respuesta: Variables pasadas por GET que no deberian estar alli

¿como recibes los datos? :S
  #3 (permalink)  
Antiguo 10/04/2010, 15:30
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Respuesta: Variables pasadas por GET que no deberian estar alli

Pues obviamente con GET:

$varPPF = $_GET['ppf'];
$varPPT = $_GET['ppt'];

Se como recibir los datos, lo que no entiendo es como hacer que los valores X y Y aparezcan en la URL si no las envie.
__________________
JuniHH
- Mi blog
- Mi portafolio
  #4 (permalink)  
Antiguo 10/04/2010, 15:36
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Variables pasadas por GET que no deberian estar alli

Esos envios son causados porque en vez de estar usando el boton de submit, estás usando el de las imagenes. En tu caso, para poder evitar que se envien esas variables, vas a tener que trabajar con javascript para enviar los valores que deseas o crear una tercera página que elimine los valores que no quieres y luego vuelva a re-enviar los datos a donde tu deseas. Este proceso será transparente para el usuario ya que se hace todo en el servidor y no se debe enviar nada al navegador.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #5 (permalink)  
Antiguo 10/04/2010, 15:40
Avatar de spider_boy  
Fecha de Ingreso: diciembre-2003
Ubicación: Chile
Mensajes: 1.855
Antigüedad: 20 años, 4 meses
Puntos: 89
Respuesta: Variables pasadas por GET que no deberian estar alli

Se me ocurre que debe ser porque tienes la imagen dentro del form :/

Prueba quitando la imagen, poniéndola fuera del form.

Nos comentas.
__________________
Nunca te olvidaré mi negra hermosa. Te extraño demasiado.
  #6 (permalink)  
Antiguo 10/04/2010, 16:11
 
Fecha de Ingreso: julio-2008
Mensajes: 85
Antigüedad: 15 años, 9 meses
Puntos: 2
Respuesta: Variables pasadas por GET que no deberian estar alli

No se puede. Cuando usas un botón tipo image siempre se añaden esos dos parámetros. Cámbialo a tipo submit, y mediante css le aplicas la imagen, si tanto te molestan.
__________________
Perros y cachorros
  #7 (permalink)  
Antiguo 10/04/2010, 16:15
Avatar de JoseGMariani  
Fecha de Ingreso: diciembre-2008
Ubicación: Edo Lara
Mensajes: 251
Antigüedad: 15 años, 4 meses
Puntos: 8
Respuesta: Variables pasadas por GET que no deberian estar alli

Buenas no tengo mucho tiempo en php noc mucho peor podrias hacer lo siquiente es algo como lo que dijo "abimaelrc" pones un codigo java script q mande el form.. y luego a las imagenes le pones la opcion

onclick="sumit()"

=) y ya con eso creo q te servira.. =) !

Código PHP:
<script>
function 
sumit()
{
document.form2.submit(); 
}
</script> 
cON ESE SCRIP EL formlario se deberia llamar form2. espero q te sirva intentalo a ver que tal.. =)!

ademas tambien es por q el action del form no lo tienes directo al archivo .php
puede tambin ser eso.. de seguro es eso.. pero prueba con el sscript q seguro con el script se te oculta esa parte..

creo. como dige anteriormente no soy muy pro en esto de php es mas tengo un problema con mi codigo.. =( si alguien de aqui me puede ayudar envime privado y le mando el link.. es q si lo pongo aqui el admin va a decir q estoy haciendo span o algo asi.. me imagino...:S mi problema es hacerca de una consulta.. bueno espeor q te sirva esta ayuda..:) esperamos tu respuesta.
__________________
"Nunca seas arrogante con los humildes, ni humilde con los arrogantes." Paulo Coelho..
  #8 (permalink)  
Antiguo 10/04/2010, 16:26
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Variables pasadas por GET que no deberian estar alli

Hola:

Ya lo hemos dicho muchas veces... los input type="image" son una variante de los type="submit" que a la vez añaden las coordenadas de donde se ha pinchado... puede ser muy útil para hacer mapas de imágenes o para obtener esas coordenadas para algún fin...

La semántica es la semántica (casi parafrasenado a Freud), y el sentido semántico de ese tag con ese tipo es el que es... la variante más lógica, si es que te interesa usar una imagen es un tag button con el type="submit"... el resto es cuestión de estilos... y fíjate que el comentario de la semántica es importante... si fuese importante saber discriminar el botón pulsado lo más apropiado semánticamente (en mi opinión) es un input (entrada)

Esas cuestiones semánticas se dejan de lado muy alegremente, pero luego nos preocupamos por el sitio de nuestra página en los buscadores, y terminamos tirándonos de los pelos...

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #9 (permalink)  
Antiguo 10/04/2010, 16:33
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 15 años
Puntos: 1517
Respuesta: Variables pasadas por GET que no deberian estar alli

La interpretación de caricatos (que a la verdad se fue a una profundidad analítica incomparable) es lo que te indique. Lee primero el de caricatos y luego el mio
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #10 (permalink)  
Antiguo 10/04/2010, 17:14
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Respuesta: Variables pasadas por GET que no deberian estar alli

jajajaja, interesante analisis de @Caricatos, jajajaja. Gracias a todos y especialmente a @abimaelrc, porque antes de responder pense en la alternativa de usar el boton submit que mencionaron usando como imagen de fondo la imagen (como sugirio @LoveMeNot).

Nuevamente gracias
__________________
JuniHH
- Mi blog
- Mi portafolio
  #11 (permalink)  
Antiguo 10/04/2010, 17:28
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Variables pasadas por GET que no deberian estar alli

Hola...

Bueno, si lo de usar un tag button no te ha convencido ...

Con lo fácil que es poner los estilos margin, border y padding a cero, y el background-color transparent, y te queda igualito al input type=image... solo debes acordarte de poner el atributo type, que a pesar de que por defecto son del tipo submit según la w3.org, los "ie", como siempre hacen las cosas a su manera, y ellos por defecto los consideran type="button"... un añadido al tema para los que lo visiten.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #12 (permalink)  
Antiguo 11/04/2010, 07:34
Avatar de junihh  
Fecha de Ingreso: febrero-2004
Ubicación: República Dominicana
Mensajes: 997
Antigüedad: 20 años, 2 meses
Puntos: 7
Respuesta: Variables pasadas por GET que no deberian estar alli

Muchas gracias @caricatos, realmente asi lo hice. De hecho tengo esto:

Código PHP:
<form method="get" action="<?=$_SERVER['PHP_SELF']?>">
    <input type="hidden" name="pnf" value="10" />
    <input type="hidden" name="pnt" value="19" />
    <input type="submit" class="cmtFrm_nxt" />
</form>
Código HTML:
.cmtFrm_nxt, .cmtFrm_prv { 
	width: 26px;
	height: 26px;
	border: none;
	color: transparent;
	font-size: 0px;
	cursor: default;
	float: left;
	margin-right: 5px;
}
.cmtFrm_prv { 
	background: url(<?=$siteImgs;?>bot_nxtprv.gif) no-repeat scroll 0 0;
}
.cmtFrm_prv:hover { 
	background: url(<?=$siteImgs;?>bot_nxtprv.gif) no-repeat scroll 0 -26px;
	cursor: pointer;
}
.cmtFrm_nxt { 
	background: url(<?=$siteImgs;?>bot_nxtprv.gif) no-repeat scroll -26px 0;
}
.cmtFrm_nxt:hover { 
	background: url(<?=$siteImgs;?>bot_nxtprv.gif) no-repeat scroll -26px -26px;
	cursor: pointer;
}
Eso si, no sabia que al quitar el value el boton ponia como titulo por defecto "submit", lo que me forzo a poner las letras transparentes y a su tamaño minimo, como ves en el CSS.

Nuevamente gracias a ti y a todos los que aportaron
__________________
JuniHH
- Mi blog
- Mi portafolio
  #13 (permalink)  
Antiguo 11/04/2010, 11:02
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: Variables pasadas por GET que no deberian estar alli

Hola:

Yo estoy viendo un tag input:
<input type="submit" class="cmtFrm_nxt" />

Cuando yo planteo usar un tag button:
<button type="submit" style="background-color: transparent; border: 0; margin: 0; padding: 0"><img src="<?=$siteImgs;?>bot_nxtprv.gif" /></button>

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo

Etiquetas: variables
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 13:17.