Consulta mysql

Hola desde Colombia, tengo una inquietud que no he podido resolver a ver si me puedes ayudar.
Tengo una base de datos y le ago el barrido me muestra los datos en una tabla pero quiero que alguno de los itens de esa tabla sea un link hacia otra página describiendo dicho link

1 Respuesta

Respuesta
1
A ver si esto te sirve:
<?php
# Aquí lo que hacemos es conectar al servidor de Bases de Datos
$link = mysql_connect("servidor","usuario","password") or die(trigger_error(mysql_error()));
# Aquí lo que hacemos es seleccionar la BDatos
mysql_select_db("basededatos",$link) or die(trigger_error(mysql_error()));
# Construimos la consulta
$query = "SELECT * FROM tabla_donde_se_busca WHERE (buscar_por_1 LIKE '%".$buscar_por_parametro."%') ORDER BY identificador";
# Ejecutamos la consulta
$result = mysql_query($query) or die(trigger_error(mysql_error()));
# Si se retorno al menos 1 fila
if(mysql_num_rows($result) > 0){
# Mientras haya resultados [filas] ponemos todos los campos de la tabla o sea si mi tabla tiene 3 campos ponemos
# list($campo1,$campo2,$campo3) = mysql_fetch_row($result)
while(list($identificador,$campo1,$campo2) = mysql_fetch_row($result)){
# Construimos el vinculo haciendo referencia a cada uno de los identificadores especificos de cada resultado lo que te permitira luego
# en la pagina mostrardetalles.php realizar la consulta y devolver los resultados pero esta vez pertenecientes a la fila con ID igual al que
# le pasas como parametro
echo "<a href=\"mostrardetalles.php?identificador=".$identificador."\">".$campo1."</a>";
}
}else{
die("No se obtuvieron resultados");
}
?>
Hola nuevamente lo que quiero hacer es parecido a lo que se encuentra en este link.
http://www.alcaldiadecartagena.gov.co/procesos.asp
Quiero mostrar los resultados de la búsqueda como lo muestra esta página.
Pues no entiendo muy bien que es lo que quieres hacer. ¿Es poner un link tipo mipagina.php? ¿Detallesid=algo y que entonces en esa página se te muestren todos los campos de ese detallesid especifico o que?
Explicate un poco más para poder ayudarte.
Pues explicame un poquito mejor porque no entiendo que es lo que quieres hacer en realidad. Ponlo todo detallado como si no hubiese hecho nada de nada a ver si logro entender.
Hola nuevamente, coloque el código que me facilitastes y me muestra el link hacia otra página pero los resultados me los envía todos en una linea y quiero que queden en una tabla y tengo varias carpetas con los documentos correspondientes a esos link como accedo a estos.
<?php
# Aquí lo que hacemos es conectar al servidor de Bases de Datos
$link = mysql_connect("localhost","root","") or die(trigger_error(mysql_error()));
# Aquí lo que hacemos es seleccionar la BDatos
mysql_select_db("personeria",$link) or die(trigger_error(mysql_error()));
# Construimos la consulta
$query = "SELECT * FROM contrataciones where (`codi_contrato` >= '$hoy') ORDER BY `codi_contrato` DESC ";
# Ejecutamos la consulta
$result = mysql_query($query) or die(trigger_error(mysql_error()));
# Si se retorno al menos 1 fila
if(mysql_num_rows($result) > 0){
# Mientras haya resultados [filas] ponemos todos los campos de la tabla o sea si mi tabla tiene 3 campos ponemos
# list($campo1,$campo2,$campo3) = mysql_fetch_row($result)
while(list($identificador,$codi_contrato,$tipo_proceso,$dependencia,$objeto,$estado,$etapa_contrato) = mysql_fetch_row($result)){
# Construimos el vinculo haciendo referencia a cada uno de los identificadores especificos de cada resultado lo que te permitira luego
# en la pagina mostrardetalles.php realizar la consulta y devolver los resultados pero esta vez pertenecientes a la fila con ID igual al que
# le pasas como parametro
echo "<a href=\"mostrardetalles.php?identificador=".$identificador."\">".$codi_contrato.",".$tipo_proceso.",".$dependencia.",".$objeto.",".$estado.",".$etapa_contrato."</a>";
}
}else{
die("No se obtuvieron resultados");
}
?>
Aquí lo tienes:
<?php
# Aquí lo que hacemos es conectar al servidor de Bases de Datos
$link = mysql_connect("localhost","root","") or die(trigger_error(mysql_error()));
# Aquí lo que hacemos es seleccionar la BDatos
mysql_select_db("personeria",$link) or die(trigger_error(mysql_error()));
# Construimos la consulta
$query = "SELECT * FROM contrataciones where (`codi_contrato` >= '$hoy') ORDER BY `codi_contrato` DESC ";
# Ejecutamos la consulta
$result = mysql_query($query) or die(trigger_error(mysql_error()));
# Si se retorno al menos 1 fila
echo "<table width=\"75%\" cellpadding=0 cellspacing=1 border=0>";
if(mysql_num_rows($result) > 0){
# Mientras haya resultados [filas] ponemos todos los campos de la tabla o sea si mi tabla tiene 3 campos ponemos
# list($campo1,$campo2,$campo3) = mysql_fetch_row($result)
while(list($identificador,$codi_contrato,$tipo_proceso,$dependencia,$objeto,$estado,$etapa_contrato) = mysql_fetch_row($result)){
# Construimos el vinculo haciendo referencia a cada uno de los identificadores especificos de cada resultado lo que te permitira luego
# en la pagina mostrardetalles.php realizar la consulta y devolver los resultados pero esta vez pertenecientes a la fila con ID igual al que
# le pasas como parametro
echo "<tr>"
."<td><a href=\"mostrardetalles.php?identificador=".$identificador."\">".$codi_contrato.",".$tipo_proceso.",".$dependencia.",".$objeto.",".$estado.",".$etapa_contrato."</a></td>"
."</tr>";
}
}else{
echo "<tr>"
."<td>No se obtuvieron resultados</td>"
."</tr>";
}
echo "</table>";
?>
Según miro el código esto es lo que quiero pero me esta dando un error en la linea 17.
Parse error: parse error in c:\foxserv\www\buscar_contratos.php on line 17
Y lo que te quiero decir es por ejemplo al escoger el código # 001 o cualquier otro código, se dirija a una página que sea solo de ese contrato. Ya estando en esta página poder descargar cualquier documento por eso creo los 7 enlaces. Estos documentos están en carpetas que se encuentran en el servidor.
Dime si es esto lo que quieres. Una cosa no entiendo muy bien que es lo que quieres mostrar en la página mostrardetalles.php de la tabla 'contrataciones' porque todo esta mostrado en ese código.
<?
$link = mysql_connect("localhost","root","") or die(trigger_error(mysql_error()));
mysql_select_db("personeria",$link) or die(trigger_error(mysql_error()));
$query = "SELECT * FROM contrataciones where (`codi_contrato` >= '$hoy') ORDER BY `codi_contrato` DESC ";
$result = mysql_query($query) or die(trigger_error(mysql_error()));
echo "<table width=\"75%\" cellpadding=0 cellspacing=1 border=0>"
."<tr>"
."<td>Código de Contrato</td>"
."<td>Tipo de Proceso</td>"
."<td>Dependencia</td>"
."<td>Objeto</td>"
."<td>Estado</td>"
."<td>Etapa del Proceso</td>"
."</tr>";
if(mysql_num_rows($result) > 0){
while(list($codi_contrato,$tipo_proceso,$dependencia,$objeto,$estado,$etapa_contrato,$enlace1,$enlace2,$enlace3,$enlace4,$enlace5,$enlace6,$enlace7) = mysql_fetch_row($result)){
."<tr>"
."<td align='center'><a href='mostrardetalles.php?codi_contrato=".$codi_contrato."'>".$codi_contrato."</a></td>"
."<td>".$tipo_proceso."</td>"
."<td>".$dependencia."</td>"
."<td>".$objeto."</td>"
."<td>".$estado."</td>"
."<td>".$etapa_contrato."</td>"
."</tr>";
."<td><a href=\"mostrardetalles.php?identificador=".$identificador."\">".$codi_contrato.",".$tipo_proceso.",".$dependencia.",".$objeto.",".$estado.",".$etapa_contrato."</a></td>"
."</tr>";
}
}else{
echo "<tr>"
."<td>No se obtuvieron resultados</td>"
."</tr>";
}
echo "</table>";
?>
Hola nuevamente, el resultado lo muestra en la tabla pero yo quiero es una tabla con cinco columnas y las filas que se encuentren en la base de datos.
Que en la primera fila muestre:
Código del contrato Tipo de proceso Dependencia Objeto Estado Etapa del proceso, cada una en su respectiva columna.
Y que consulta realizo en mostrardetalles.php a la misma base de datos o a las carpetas que tienen los documentos
Tengo esta tabla en la base de datos
# MySQL-Front Dump 1.22
#
# Host: localhost Database: Gutierrez_julian
#--------------------------------------------------------
# Server version 3.23.43-nt
#
# Table structure for table 'contrataciones'
#
CREATE TABLE /*!32300 IF NOT EXISTS*/ contrataciones (
codi_contrato varchar(5) NOT NULL DEFAULT '0' ,
tipo_proceso varchar(30) NOT NULL DEFAULT '0' ,
dependencia varchar(50) NOT NULL DEFAULT '0' ,
objeto varchar(60) NOT NULL DEFAULT '0' ,
estado varchar(40) NOT NULL DEFAULT '0' ,
etapa_contrato varchar(25) NOT NULL DEFAULT '0' ,
enlace1 varchar(50) NOT NULL DEFAULT '0' ,
enlace2 varchar(50) NOT NULL DEFAULT '0' ,
enlace3 varchar(50) NOT NULL DEFAULT '0' ,
enlace4 varchar(50) NOT NULL DEFAULT '0' ,
enlace5 varchar(50) NOT NULL DEFAULT '0' ,
enlace6 varchar(50) NOT NULL DEFAULT '0' ,
enlace7 varchar(50) NOT NULL DEFAULT '0' ,
PRIMARY KEY (codi_contrato)
);
#
# Dumping data for table 'contrataciones'
#
INSERT INTO contrataciones VALUES("001","licitacion","direccion administrativa","diseño de red","adjudicado","licitacion","diseño.doc","0","0","","","","");
INSERT INTO contrataciones VALUES("002","contratacion","despacho","mantenimiento de equipos","adjudicado","inicio","mantenimiento.doc","0","0","","","","");
INSERT INTO contrataciones VALUES("003","licitacion","juridica","tutelas","adjudicado","prepliego","tutelas.pdf","0","0","","","","");
Desde un formulario realizo la consulta sea por código de contrato, dependencia, tipo de proceso, objeto, estado o etapa del proceso
El resultado quiero que me lo muestre en una tabla con uss respectivos títulos osea la primera fila de la tabla tiene en cada columna su respectivo titulo osea donde va el código del contrato donde va el tipo de proceso, el objeto, etc, de hay quiero que el código del contrato sea el link hacia otra página donde solo muestre lo referente a dicho contrato escogido.
Lo que yo quiero hacer esta en este link le das buscar sin escribir nada y miras el resultado luego esa página te da unos links de lo que quieres descargar.
Espero que puedas ayudarme en esto que no he podido hacerlo, claro no soy un duro en esto apenas estoy comenzando.
De ante mano gracias
http://www.alcaldiadecartagena.gov.co/procesos.asp
Aquí esta:
<?
$link = mysql_connect("localhost","root","") or die(trigger_error(mysql_error()));
mysql_select_db("personeria",$link) or die(trigger_error(mysql_error()));
$query = "SELECT * FROM contrataciones where (`codi_contrato` >= '$hoy') ORDER BY `codi_contrato` DESC ";
$result = mysql_query($query) or die(trigger_error(mysql_error()));
echo "<table width=\"75%\" cellpadding=0 cellspacing=1 border=0>"
."<tr>"
."<td>Código de Contrato</td>"
."<td>Tipo de Proceso</td>"
."<td>Dependencia</td>"
."<td>Objeto</td>"
."<td>Estado</td>"
."<td>Etapa del Proceso</td>"
."</tr>";
if(mysql_num_rows($result) > 0){
while(list($codi_contrato,$tipo_proceso,$dependencia,$objeto,$estado,$etapa_contrato,$enlace1,$enlace2,$enlace3,$enlace4,$enlace5,$enlace6,$enlace7) = mysql_fetch_row($result)){
echo "<tr>"
."<td align='center'><a href='mostrardetalles.php?codi_contrato=".$codi_contrato."'>".$codi_contrato."</a></td>"
."<td>".$tipo_proceso."</td>"
."<td>".$dependencia."</td>"
."<td>".$objeto."</td>"
."<td>".$estado."</td>"
."<td>".$etapa_contrato."</td>"
."</tr>";
."<td><a href=\"mostrardetalles.php?identificador=".$identificador."\">".$codi_contrato.",".$tipo_proceso.",".$dependencia.",".$objeto.",".$estado.",".$etapa_contrato."</a></td>"
."</tr>";
}
}else{
echo "<tr>"
."<td>No se obtuvieron resultados</td>"
."</tr>";
}
echo "</table>";
?>
La página a la que mando que se llama mostrardetalles.php y que paso un parámetro es para eso mismo para que cuando haga la consulta en aquella página y solo muestre las cosas pertenecientes a ese código.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas