Foros del Web » Programando para Internet » PHP »

links de consulta en php

Estas en el tema de links de consulta en php en el foro de PHP en Foros del Web. Que tal amigos, mis cordiales saludos. Mi problema es el siguiente, agradezco cualquier comentario al respecto. Estoy haciendo un buscador que de resultados paginados, pero ...
  #1 (permalink)  
Antiguo 12/01/2010, 16:50
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 3 meses
Puntos: 0
Pregunta links de consulta en php

Que tal amigos, mis cordiales saludos.
Mi problema es el siguiente, agradezco cualquier comentario al respecto.
Estoy haciendo un buscador que de resultados paginados, pero no encuentro la manera de hacer que cada uno de esos resultados tenga un link que me lleve a la página de destino. Por ejemplo, busco 'aparejos' y obtengo un listado de títulos, pero, ¿como hacer que esos títulos me lleven a una página en que se vean sus detalles? En cuanto a paginadores y otras hierbas no he obtenido una respuesta satisfactoria. Solicitaría a ustedes un manual o tutorial al respecto.
Me pongo en sus manos.
  #2 (permalink)  
Antiguo 12/01/2010, 17:00
 
Fecha de Ingreso: enero-2010
Ubicación: Guadalajara, Jalisco
Mensajes: 12
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: links de consulta en php

Cita:
Iniciado por djcd Ver Mensaje
Que tal amigos, mis cordiales saludos.
Mi problema es el siguiente, agradezco cualquier comentario al respecto.
Estoy haciendo un buscador que de resultados paginados, pero no encuentro la manera de hacer que cada uno de esos resultados tenga un link que me lleve a la página de destino. Por ejemplo, busco 'aparejos' y obtengo un listado de títulos, pero, ¿como hacer que esos títulos me lleven a una página en que se vean sus detalles? En cuanto a paginadores y otras hierbas no he obtenido una respuesta satisfactoria. Solicitaría a ustedes un manual o tutorial al respecto.
Me pongo en sus manos.
Que tal.

Mira, el crear un link que lleve a la pagina con información es tremendamente facil, te explico rapidamente...

Primero necesitas tener la información del "producto", supongamos que dentro de la BD tienes 2 campos "nombre" y el clásico "id", solo necesitas construir un link concatenando estos campos de manera que "pases" la variable ID a la página que mostrará la información.

Código PHP:
echo '<a href="pagina_que_muestra.php?id='.$id.'">'.$nombre.'</a>'
De forma que en la página que "recibes" ese ID, solo necesitas hacer la consulta, algo tipo..

Código PHP:
mysql_query("SELECT * FROM productos WHERE id=".$_GET['id']); 
Asi ya tienes una consulta/resultado con TODA la info del producto con id X, tal como lo indicaste.

La paginación de resultados es un poco más compleja, pero en esta página esta un manual muy bueno y detallado que estoy seguro te va a servir.

http://www.desarrolloweb.com/articulos/1035.php

Saludos =)
  #3 (permalink)  
Antiguo 13/01/2010, 08:40
Avatar de djcd  
Fecha de Ingreso: enero-2010
Ubicación: Localhost
Mensajes: 11
Antigüedad: 14 años, 3 meses
Puntos: 0
De acuerdo Respuesta: links de consulta en php

Te agradezco profundamente, Ju4nCh1t0, de inmediato pongo en práctica esta información.
Agradezco también a este foro, es el mejor de la red.
  #4 (permalink)  
Antiguo 13/01/2010, 12:28
 
Fecha de Ingreso: enero-2010
Ubicación: 01000110
Mensajes: 6
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: links de consulta en php

Hola, me interesó mucho este tema, pero no pude entender muy bien.
Ju4nCh1t0, ¿como se utilizan esas líneas?, donde quiero aplicarlas es aquí:

Código PHP:
<?php
require('conexion.php');
$RegistrosAMostrar=4;

//estos valores los recibo por GET
if(isset($_GET['pag'])){
    
$RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar;
    
$PagAct=$_GET['pag'];
//caso contrario los iniciamos
}else{
    
$RegistrosAEmpezar=0;
    
$PagAct=1;
    
}
$Resultado=mysql_query("SELECT * FROM empleado ORDER BY idempleado LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$con);
echo 
"<table border='1px'>";
while(
$MostrarFila=mysql_fetch_array($Resultado)){
    echo 
"<tr>";
    echo 
"<td>".$MostrarFila['nombres']."</td>";
    echo 
"<td>".$MostrarFila['departamento']."</td>";
    echo 
"<td>".$MostrarFila['sueldo']."</td>";
    echo 
"</tr>";
}
echo 
"</table>";
//******--------determinar las páginas---------******//
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM empleado",$con));

$PagAnt=$PagAct-1;
$PagSig=$PagAct+1;
$PagUlt=$NroRegistros/$RegistrosAMostrar;

//verificamos residuo para ver si llevará decimales
$Res=$NroRegistros%$RegistrosAMostrar;
// si hay residuo usamos funcion floor para que me
// devuelva la parte entera, SIN REDONDEAR, y le sumamos
// una unidad para obtener la ultima pagina
if($Res>0$PagUlt=floor($PagUlt)+1;

//desplazamiento
echo "<a onclick=\"Pagina('1')\">Primero</a> ";
if(
$PagAct>1) echo "<a onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
echo 
"<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
if(
$PagAct<$PagUlt)  echo " <a onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
echo 
"<a onclick=\"Pagina('$PagUlt')\">Ultimo</a>";
?>
esto me devuelve una tabla simple, pero ¿como les pongo un link a cada línea de datos?

Un premio al que me responda bien
  #5 (permalink)  
Antiguo 13/01/2010, 16:57
 
Fecha de Ingreso: enero-2010
Ubicación: Guadalajara, Jalisco
Mensajes: 12
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: links de consulta en php

Cita:
Iniciado por dasvidanio Ver Mensaje
Hola, me interesó mucho este tema, pero no pude entender muy bien.
Ju4nCh1t0, ¿como se utilizan esas líneas?, donde quiero aplicarlas es aquí:

esto me devuelve una tabla simple, pero ¿como les pongo un link a cada línea de datos?

Un premio al que me responda bien
SI entendí bien.... esto....

Código PHP:
while($MostrarFila=mysql_fetch_array($Resultado)){ 
    echo 
"<tr>"
    echo 
"<td>".$MostrarFila['nombres']."</td>"
    echo 
"<td>".$MostrarFila['departamento']."</td>"
    echo 
"<td>".$MostrarFila['sueldo']."</td>"
    echo 
"</tr>"

Te imprime la tabla que mencionas, si es asi, entonces idempleado es el nombre del campo del ID, solo necesitarias agregarle el link a lo que muestras, suponiendo que quieres que se "de click" en el nombre

Código PHP:
while($MostrarFila=mysql_fetch_array($Resultado)){ 
    echo 
"<tr>"
    echo 
'<td><a href="'.$MostrarFila['idempleado'].'">'.$MostrarFila['nombres']."</a></td>"
    echo 
"<td>".$MostrarFila['departamento']."</td>"
    echo 
"<td>".$MostrarFila['sueldo']."</td>"
    echo 
"</tr>"

Y es todo
  #6 (permalink)  
Antiguo 14/01/2010, 08:32
 
Fecha de Ingreso: enero-2010
Ubicación: 01000110
Mensajes: 6
Antigüedad: 14 años, 3 meses
Puntos: 0
De acuerdo Respuesta: links de consulta en php

Ju4nCh1t0, no puedo decir menos que eres un ¡GENIO!
me funcionó perfectamente.
Me quedó así:
Código PHP:
while($MostrarFila=mysql_fetch_array($Resultado)){ 
    echo 
"<tr>";  
    echo 
'<td><a href="'.$MostrarFila['idempleado'].'">'.$MostrarFila['nombres']."</a></td>";
    echo 
"<td>".$MostrarFila['departamento']."</td>"
    echo 
"<td>".$MostrarFila['sueldo']."</td>"
    echo 
"</tr>"

Pero me quedé con la duda, no entendí lo que le repondiste a djcd.
Ahora que tengo los datos con linkeo, ¿como abro la página que le corresponde a cada uno?
A propósito, he leído algo de 'karma' aquí en el foro ¿que es eso?¿te sirve?
  #7 (permalink)  
Antiguo 14/01/2010, 10:36
 
Fecha de Ingreso: enero-2010
Ubicación: Guadalajara, Jalisco
Mensajes: 12
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: links de consulta en php

Cita:
Iniciado por dasvidanio Ver Mensaje
Ju4nCh1t0, no puedo decir menos que eres un ¡GENIO!
me funcionó perfectamente.
Me quedó así:
Código PHP:
while($MostrarFila=mysql_fetch_array($Resultado)){ 
    echo 
"<tr>";  
    echo 
'<td><a href="'.$MostrarFila['idempleado'].'">'.$MostrarFila['nombres']."</a></td>";
    echo 
"<td>".$MostrarFila['departamento']."</td>"
    echo 
"<td>".$MostrarFila['sueldo']."</td>"
    echo 
"</tr>"

Pero me quedé con la duda, no entendí lo que le repondiste a djcd.
Ahora que tengo los datos con linkeo, ¿como abro la página que le corresponde a cada uno?
A propósito, he leído algo de 'karma' aquí en el foro ¿que es eso?¿te sirve?
Pues eso del Karma no es importante para mi :P

Sobre cómo manejar los datos enviados....

Sobre el código que pusiste.... esta bien pero no del todo... a qué me refiero?? tu link solo esta enviando al ID de la persona...

Supongamos que estas mostrando el link, y das click a "Juan Perez" que tiene ID = 44...

La url en este momento solo sería "44", lo que quiere decir que en el HTML se muestra esto....

<a href="44">Juan perez</a>

Tu no tienes una página/archivo llamado solo 44, por lo que el manejo ideal es por medio de variables GET (pasadas por la URL), supongamos que el archivo donde muestras los links se llama links.php, hasta este punto todo funciona bien, pero te falta un archivo donde mostrar la info, supongamos que le llamas mostrarinfo.php.

Para mandarle la variable de la persona que quieres mostrar, tienes que agregar al final de la URL esto... ?id=44 (en el caso de Juan Perez). De modo que la url completa sería http://tupagina.com/mostrarinfo.php?id=44

Asi ya podemos leer la variable id y utilizarla a placer. Por lo tanto, necesitas cambiar esta linea....
Código PHP:
 echo '<td><a href="'.$MostrarFila['idempleado'].'">'.$MostrarFila['nombres']."</a></td>"
Y agregarle la URL del archivo donde mostraras la info, siguiendo mi ejemplo sería...

Código PHP:
 echo '<td><a href="mostrarinfo.php?id='.$MostrarFila['idempleado'].'">'.$MostrarFila['nombres']."</a></td>"
Lo único restante es cómo utilizar la variable, que es lo más sencillo del mundo.

Tienes 2 opciones sencillas:

1.- Lo asignas a una variable para despues utilizarlo, por ejemplo en una consulta a MySQL
Código PHP:
$id $_GET['id'];
mysql_query("SELECT * FROM info_persona WHERE id = ".$id); 
2.- Lo utilizas sin asignar nada a una variable, por ejemplo
Código PHP:
mysql_query("SELECT * FROM info_persona WHERE id = ".$_GET['id']); 
Asi ya puedes hacer uso de esta variable y desplegar información o insertar información o lo que desees hacer.
  #8 (permalink)  
Antiguo 14/01/2010, 11:48
 
Fecha de Ingreso: enero-2010
Ubicación: 01000110
Mensajes: 6
Antigüedad: 14 años, 3 meses
Puntos: 0
Respuesta: links de consulta en php

Que tal Ju4nCh1t0, un saludo y un abrazo antes que todo.

Agregarle la URL del archivo donde muestro los detalles lo entendí muy claro, pero lo de las variables no pude hacerlo funcionar ¿donde va eso?, lo que al final de varios intentos terminé haciendo fue cambiar
Código PHP:
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM empleado",$con)); 
por
Código PHP:
mysql_query("SELECT * FROM info_persona WHERE id = ".$_GET['id']); 
pero me sigue quedando igual.
Te daría gracias el resto de mi vida al echarme una mano, en realidad quiero aprender php, y veo que es mejor practicando y preguntando a gente que realmente sabe, así como tu.

Lleno de dudas, pero lleno de esperanzas
  #9 (permalink)  
Antiguo 14/01/2010, 13:41
 
Fecha de Ingreso: enero-2010
Ubicación: Guadalajara, Jalisco
Mensajes: 12
Antigüedad: 14 años, 3 meses
Puntos: 1
Respuesta: links de consulta en php

Cita:
Iniciado por dasvidanio Ver Mensaje
Que tal Ju4nCh1t0, un saludo y un abrazo antes que todo.

Agregarle la URL del archivo donde muestro los detalles lo entendí muy claro, pero lo de las variables no pude hacerlo funcionar ¿donde va eso?, lo que al final de varios intentos terminé haciendo fue cambiar
Código PHP:
$NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM empleado",$con)); 
por
Código PHP:
mysql_query("SELECT * FROM info_persona WHERE id = ".$_GET['id']); 
pero me sigue quedando igual.
Te daría gracias el resto de mi vida al echarme una mano, en realidad quiero aprender php, y veo que es mejor practicando y preguntando a gente que realmente sabe, así como tu.

Lleno de dudas, pero lleno de esperanzas
Pues mira... anidar tantas funciones podria fallar... al menos a mi me llegó a fallar... te recomiendo que las hagas más estructuradas.

Aparte la consulta que acabas de poner te regresará los datos de TODOS los campos de TODOS los empleados..... Por lo que es necesario limitar los resultados.

Te voy a poner un ejemplo con tu configuración de cómo te va a regresar los datos de la persona, ponlo tal cual te lo pongo a continuación y debe mostrarte un arreglo con todos los datos

Código PHP:
$result mysql_query("SELECT * FROM empleado WHERE idempleado = ".$_GET['id'],$con);
$array mysql_fetch_array($resultMYSQL_ASSOC);
echo 
"<pre>";
print_r($array);
echo 
"</pre>"
Con esto, tenemos una consulta asi....

"SELECT * FROM empleado WHERE idempleado = ".$_GET['id']

Traducido a lenguaje "cristiano", esto te regresa TODOS los campos de los empleados donde el ID sea IGUAL al valor que recibimos en la URL

Espero haya quedado claro
  #10 (permalink)  
Antiguo 14/01/2010, 15:44
Avatar de JoseTejada  
Fecha de Ingreso: diciembre-2007
Ubicación: Peru.Lima.Cercado.MDuarez.Granaderos172
Mensajes: 218
Antigüedad: 16 años, 4 meses
Puntos: 11
Respuesta: links de consulta en php

Wow q paciencia mi estimado Ju4nCh1t0... da gusto que se incorpore gente como tú a esta comunidad, te ganaste karmita :P
  #11 (permalink)  
Antiguo 15/01/2010, 09:43
 
Fecha de Ingreso: enero-2010
Ubicación: 01000110
Mensajes: 6
Antigüedad: 14 años, 3 meses
Puntos: 0
Tienes toda la razón, y agradezco profundamente su paciencia.

Pero estando protegido por el anonimato, les confieso que no es realemnte que no entienda, pero imaginen lo complicado que es programar por líneas siendo disléxico, ¡los errores te llueven!, pero me gusta demasiado la informática. Por lo mismo vuelvo a agradecer la paciencia de Ju4nCh1t0.

Última edición por GatorV; 15/01/2010 a las 17:14

Etiquetas: links
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 10:41.