PHP - no funciona el GET

 
Vista:

no funciona el GET

Publicado por tatiana (2 intervenciones) el 01/09/2010 19:35:21
hola... tengo un problema cuando envio una variable siempre me sale vacia no s eporq...

en un archivo tengo esto:
<a href="Preguntas.php?idP=<?echo $id?>" target="popup" onClick="window.open(this.href, this.target, 'width=680,height=250,scrollbars=yes,resizable=yes'); return false;"> Agregar Preguntas </a>

desde Preguntas.php

intento recuperar la variable asi:
$idP = $_GET['idP'];

pero al hacer echo $idP me sale en blanco.... no en el brwoser me sale me sale esto:
http://www.midominio.com/Preguntas.php?idP=1

entonces i envia la variable.. pero al recuperrarla no funciona
q estoy haciendo mal?

gracias
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

RE:no funciona el GET

Publicado por Leandro (42 intervenciones) el 01/09/2010 20:00:34
Fijate que haces: <a href="Preguntas.php?idP=<?echo $id?>" target="popup"
y deberia ser: <a href="Preguntas.php?idP=<?php echo $id ?>" target="popup"

Intenta por ese lado.
Saludos
Leandro
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

RE:no funciona el GET

Publicado por RockMuerte (146 intervenciones) el 01/09/2010 21:30:13
los get, post, session no usan apostofes si no comillas

recuperalo asi

$idP = $_GET["idP"];

y respecto como lo envias hazlo asi

a href="Preguntas.php?idP=<?= $id?>" target="popup" onClick="window.open(this.href, this.target, 'width=680,height=250,scrollbars=yes,resizable=yes'); return false;"> Agregar Preguntas </a>

me cuentas.
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

RE:no funciona el GET

Publicado por Leandro (42 intervenciones) el 02/09/2010 15:40:18
Primero que nada, para php usar comillas ( " " ) o apostrofes (' ') es lo mismo siempre y cuando los uses juntos, es decir, que no abras comillas y cierres con apostrofes.

Por lo tanto es lo mismo hacer: $_POST["name"] que $_POST['name']

Luego las tags de php se abren asi: <?php
y se cierran asi: ?>

Luego lo que mencionaba el usuario anterio esto: a href="Preguntas.php?idP=<?= $id?>"
no es correcto.
Asi como esta en la url del link aparecera:

http://Preguntas.php?idP=<?= $id?>

si no le haces echo a una variable php no te la va a imprimir.
Entonces debes hacerlo asi:

$idP = $_GET["idP"];
...
a href="Preguntas.php?idP=<?php echo $idP ?>"

Saludos
Leandro
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

RE:no funciona el GET

Publicado por tatiana (2 intervenciones) el 02/09/2010 16:02:25
hola garcias a todos...

la forma como lo estaba intentando si funciona... mi problema era q estaba usando esa variable dentro de un:
function Preguntas(){
............................
}

y me faltaba algo indispensable.. era un problema tonto pero casi no caigo en cuenta...

era : global $id; dentro de la funcion.... perodon las molestias

muchas gracias a todos
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

RE:no funciona el GET

Publicado por Andres (52 intervenciones) el 02/09/2010 18:42:25
Hola a todos,

para aportar algo más sobre como se escriben las etiquetas, ambas formas funcionan, solo que la opción corta <?= debe configurarse o habilitarse en php.ini, como muchas de las cosas que a veces funcionan y otras no, y no sabemos porqué.

la directiva es: short_open_tag = on | off

Siempre se recomienda la sintaxis por defecto <?php ...?>, para no tener problemas de configuración corriendo el script en otro servidor.

Saludos a todos.
Andrés.
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

RE:no funciona el GET

Publicado por rockmuerte (146 intervenciones) el 02/09/2010 20:00:20
si claro peor respeta un solo estandar y el correcto uso de los codigos, usa comillas y nada mas. y referente a <?= ?> es la mejor opcion.
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

RE:no funciona el GET

Publicado por Leandro (42 intervenciones) el 02/09/2010 21:28:18
Lo mejor SIEMPRE es seguir el estandar y usar <?php ?>
dado a que si usas <?= ?> y te cambian de servidor tendrias que volver a
configurar el php.ini, en cambio de la manera que te digo yo no tienes problemas

Leandro
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

RE:no funciona el GET

Publicado por Diego Romero (1450 intervenciones) el 03/09/2010 16:56:42
Leandro: lo que ha dicho RockMuerte es correcto respecto de usar <?=$id?>, lo que ha olvidado decir que esa sintaxis para abrir y cerrar código PHP no siempre está habilitada. Para usar los tags cortos (short open tags) hay poner

short_open_tag = On

en el php.ini, pero insisto, no siempre está habilitada en los servidores por lo que su uso es no recomendado.
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