Foros del Web » Programando para Internet » PHP »

como puedo poner un texto en enlace

Estas en el tema de como puedo poner un texto en enlace en el foro de PHP en Foros del Web. Disculpen alguien ke sepa como poner un enlace a un texto tomado de una tabla mysql y ke este enlace me envie a otros datos ...
  #1 (permalink)  
Antiguo 30/01/2007, 18:08
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
como puedo poner un texto en enlace

Disculpen alguien ke sepa como poner un enlace a un texto tomado de una tabla mysql y ke este enlace me envie a otros datos ke esten almacenados en en otra tabla mysql.
Es como la ficha de un resumen ke utilizan en mercado libre para mostrar una pequeña descripcion y ke dandole click te envia a otra pagina con el tema completo de dicha descripcion.
Alguien ke me pase un codigo de ejemplo, de como hacerlo, se lo agradeceria mucho.
__________________
:cool: aprendiz :cool:
  #2 (permalink)  
Antiguo 30/01/2007, 19:19
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: como puedo poner un texto en enlace

Bien veamos:

primero debes realizar una consulta a la BD en la pagina que mostrara la lista de items (tomando el caso de mercado libre)

Código PHP:
$sql mysql_query('SELECT producto_id,producto_nombre FROM productos ORDER BY nombre DESC');
 
while (
$datos mysql_fetch_assoc($sql)) {
echo 
"<a href=\"detalles.php?id=".$datos['producto_id']."\">".$datos['producto_nombre']."</a><br />";

Luego en la pagina detalles.php

Código PHP:
if(!is_numeric($_GET['id']) || $_GET['id'] < 1) {
echo 
'error, id invalido';
exit;
}
$sql mysql_query("SELECT * FROM productos WHERE producto_id='".$_GET['id']."' LIMIT 0,1");
$datos mysql_fetch_assoc($sql);
 
echo 
'Nombre del producto: '.$datos['producto_nombre'].'<br />';
echo 
'Precio: '.$datos['producto_precio'].'<br/>';
echo 
'Descripcion: '.$datos['producto_descripcion'].'<br />';
//etc::: 
Me tengo que retirar ahora, te dejo paraque analices el codigo, si tiene errores, es porque lo hice muy rapido ahora

tutorial+mysql

Salu2
  #3 (permalink)  
Antiguo 30/01/2007, 20:13
 
Fecha de Ingreso: abril-2005
Mensajes: 253
Antigüedad: 19 años
Puntos: 0
Re: como puedo poner un texto en enlace

amigo esto si es masomenos lo que necesitaba de hecho la primera parte del codigo si me funciono a la perfeccion. pero al momento de ke me envia a la pagina detalles.php me sale el echo del segundo codigo diciendo error id invalido y en la barra del explorador me sale la descripcion de la segunda pagina,pero en la direccion osea:
127.x.x.x/detalles.php?id=hola
__________________
:cool: aprendiz :cool:
  #4 (permalink)  
Antiguo 30/01/2007, 23:59
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 3 meses
Puntos: 81
Re: como puedo poner un texto en enlace

Eso pasa porque en la pagina detalles.php pregunta si es distinto de numerico o menor que 1:
Código PHP:
if(!is_numeric($_GET['id']) || $_GET['id'] < 1) { 
Y justamente le estas enviando "hola" por lo tanto es un id invalido.
  #5 (permalink)  
Antiguo 01/02/2007, 18:02
okram
Invitado
 
Mensajes: n/a
Puntos:
Re: como puedo poner un texto en enlace

Cita:
Iniciado por towi62 Ver Mensaje
amigo esto si es masomenos lo que necesitaba de hecho la primera parte del codigo si me funciono a la perfeccion. pero al momento de ke me envia a la pagina detalles.php me sale el echo del segundo codigo diciendo error id invalido y en la barra del explorador me sale la descripcion de la segunda pagina,pero en la direccion osea:
127.x.x.x/detalles.php?id=hola

Revisa la estructura de tu tabla, pues en el enlace de la pagina que muestra la lista hice referencia a una columna producto_id que supuestamente contiene el id de cada producto, que sera numerico y debera tener el atributo auto_increment:

while ($datos = mysql_fetch_assoc($sql)) {
echo
"<a href=\"detalles.php?id=".$datos['producto_id']."\">".$datos['producto_nombre']."</a><br />";
}


En todo caso, podrias mandarme la estructura de tu tabla?ç

Salu2
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.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 14:18.