Foros del Web » Programando para Internet » PHP »

Problema con variables y link

Estas en el tema de Problema con variables y link en el foro de PHP en Foros del Web. Hola de nuevo. Tengo un problema, mediante los querys que me ayudo a solucionar Cain, obtengo datos de dos bases de datos, y los muestro ...
  #1 (permalink)  
Antiguo 19/11/2002, 03:49
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
Problema con variables y link

Hola de nuevo. Tengo un problema, mediante los querys que me ayudo a solucionar Cain, obtengo datos de dos bases de datos, y los muestro por pantalla. Ahora el problema es que ese dato que obtengo, lo quiero pasar mediante un link para buscar la página a abrir.

Si hago la prueba manualmente, me sale perfectamente. Es asi..

http://localhost/listado_comunicados...hp?vivienda=A3

y me muestra en una tabla los resultados de A3. el problema es pasarle el valor. El campo en pantalla lo muestro asï:

<?echo $row["vivienda"]?>

como he de pasarlo en el link? he probado `pero no sale..

http://localhost/listado_comunicados....php?vivienda=<?echo $row["vivienda"]?>

mi problema es que no lo he pasado nunca asi, y no encuentro la solucion. donde esta el error¿

Gracias!
  #2 (permalink)  
Antiguo 19/11/2002, 03:52
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 15 años, 11 meses
Puntos: 17
Si usas mysql_fetch_array, debes usar $row[vivienda] (sin las comillas)

Si has usado mysql_fecth_row, debes usar $row[0] (número de campo), o $row["vivienda"] (ahora si comillas).

Ahora bien, usando $row["vivienda"] es posible que debas concatenar texto con variable, así:

"enlace?variable=".$row["vivienda"]

No tengo muy claro como funciona, lo que hago es ir probando hasta que sale bien y luego ir replicando la solución que funciona
__________________
M a l d i t o F r i k i
  #3 (permalink)  
Antiguo 19/11/2002, 04:04
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
Gracias Cain!! pero el problema es que he probado todo, y no hay manera. Utilizo mysql_fetch_array, lo paso como dices sin comillas:

listado_comunicados_indiv.php?vivienda=$row[vivienda]

quiero obtener el dato de la base de datos, pero no puedo pasarlo por el link. cuando te refieres a "enlace?variable=", a que te refieres¿

si yo pongo listado_comunicados_indiv.php?vivienda=A2, que es un campo de la base de datos el scripr me funciona a la perfecciión...

se te ocurre algo más?

Moltes Gràcies, i salu2 desde Catalunya!!
  #4 (permalink)  
Antiguo 19/11/2002, 04:08
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 15 años, 11 meses
Puntos: 17
Si pudieras postear el código while() y la línea que da error podríamos mirarlo más detenidamente.

Es posible que estés poniendo $row en lugar de $row1, o algo similar.
__________________
M a l d i t o F r i k i
  #5 (permalink)  
Antiguo 19/11/2002, 04:15
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
Aqui te paso el codigo, recuerda que tengo dos querys. el fallo es del segundo, aunque obtengo el valor de la base de datos, ya que lo muestro por pantalla

<?while ($row1 = mysql_fetch_array($resultados1)){?>
<?echo $row1["vivienda"]?>
<?
}
?>

como paso el valor de ese campo de la tabla por el link?

Gracias
  #6 (permalink)  
Antiguo 19/11/2002, 04:17
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 15 años, 11 meses
Puntos: 17
Código PHP:
<?while ($row1 mysql_fetch_array($resultados1)){
echo 
"<a href=http://www.miweb.es/pagina.php?vivienda=$row1[vivienda]>$row1[vivienda]</a><br>\n";
}
?>
__________________
M a l d i t o F r i k i
  #7 (permalink)  
Antiguo 19/11/2002, 04:21
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
no funciona, da error. además, yo intento hacer un vinculo. pienso que me he equivocado al hablarte de un link. tengo un sitio que pone, leer mis mensajes, y ahi le paso la pagina con el contenido de la variable. por eso lo paso asi:

http://listado_comunicados_indiv.php?vivienda=A2

si le paso yo el valor directamente funciona. el problema es que no se pasar el valor que recibo por la url.

Gracias!
  #8 (permalink)  
Antiguo 19/11/2002, 04:37
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 15 años, 11 meses
Puntos: 17
A ver si lo entiendo.

¿Tú quieres recuperar el valor de la variable pasada por URL o de lo que sale de la BD?

Si lo que quieres es saber el valor de una variable pasada por URL. Debes hacer simplemente:

echo $variable;

En este caso:
echo $vivienda;

Puesto que así se llama la variable.

Para que funcione, debes tener el register_globals de la configuración de PHP en ON.
__________________
M a l d i t o F r i k i
  #9 (permalink)  
Antiguo 19/11/2002, 04:44
 
Fecha de Ingreso: enero-2002
Mensajes: 1.872
Antigüedad: 15 años, 11 meses
Puntos: 3
a ver si me entiendes. tengo un tablon de anuncios con mensajes generales. accedo mediante password y usuario. recojo las variables para vincular los datos. luego, hay un vinculo que pone "Mis Mensaje", y como tengo los datos del usuario, me muestra los mensajes de ese usuario. el problema es q cuando yo vaya a "mis mensajes", me coja el valor de la base de datos y me pinte la tabla de listado.._indiv.php con los datos del usuario en cueestion.

si pogo como te decia antes arriba vivienda=A2, me pinta los datos. ese vivienda A2 lo muestro en pantalla con el echo y me da el valor, pero no se pasarlo para que cuando vaya a "mis mensajes", coja el valor y pinte la tabla de mensajes..

me entiendes? es muy dicifil explicarlo asi!!

Muchisima gracias!
  #10 (permalink)  
Antiguo 19/11/2002, 04:52
Avatar de Cain  
Fecha de Ingreso: enero-2002
Ubicación: Catalunya
Mensajes: 6.459
Antigüedad: 15 años, 11 meses
Puntos: 17
Me parece que no acabo de entenderlo :(

Para mostrar valores de una base de datos, se usa esto:

llistat.php
Código PHP:
<?php

$result 
mysql_query("SELECT campo1,campo2 FROM tabla WHERE condiciones");

while (
$row mysql_fetch_array($result){
echo 
"<a href=fitxa.php?campo1=$row[campo1]>$row[campo2]</a><br>\n";
}
?>
Luego, una vez en fitxa.php, recuperamos el valor que hemos pasado por URL desde llistat.php

fitxa.php
Código PHP:
<?php

echo $campo1;

?>
Naturalmente, podemos usar $campo1 para lo que queramos.
__________________
M a l d i t o F r i k i
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 00:56.