Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

peterhall

filtrar campos de uma tabela

Recommended Posts

boas. é o seguinte, tenho uma página com uma lista de resultados com o ID único identificatico com link a outra página onde deverá aparecer só os resultados desse mesmo id, ou seja, quando clico nesse id a outra página abre só com os seus resultados, sendo que esses mesmos resultados estão divididos por 3 tabelas em mysql... algume pode dar uma ajuda?

 

obrigado! :huh:

Compartilhar este post


Link para o post
Compartilhar em outros sites

@peterhall,

 

Sua dúvida está mais relacionada ao banco de dados que ao PHP, vou mover o tópico para o fórum específico. Caso, após resolver o problema da filtragem, restar alguma dúvida sobre o PHP, basta pedir que algum moderador de MySQL move esse tópico novamente para PHP.

 

Movido:

 

PHP http://forum.imasters.com.br/public/style_emoticons/default/seta.gif MySQL

Compartilhar este post


Link para o post
Compartilhar em outros sites

mostra a estrutura das suas 3 tabelas

 

 

boas. aqui vai:

tabela1 com lista visivel na página:

 

id int(111) Não

user_name varchar(20) Não

valor_emprestimo float Não

prazo varchar(10) Não

carga_financeira decimal(4,2) Não

juro_inicial decimal(4,2) Não

juro_maximo decimal(4,2) Sim NULL

estado_leilao varchar(15) Não

data_fecho date Não

numero_oferta varchar(10) Sim NULL

valor_financiado float Sim NULL

valor_coberto decimal(4,2) Sim NULL

class_credito varchar(5) Não

doc_credito varchar(5) Não

seguro_credito varchar(5) Não

patrimonio_credito varchar(5) Não

trabalho_credito varchar(5) Não

dt_created timestamp Não CURRENT_TIMESTAMP

 

agora, as tabelas que me darão os resultados:

 

tabela2:

 

id int(111) Não

userlicitado varchar(20) Não

userlicitador varchar(20) Não

valorlicitado float Não

valoraceite float Não

juromaximo decimal(4,2) Não

datalicitacao datetime Não

estadolicitacao varchar(15) Não

dt_created timestamp Não CURRENT_TIMESTAMP

 

tabela3:

 

id int(111) Não

userlicitado varchar(20) Não

porque varchar(100) Não

trabalho varchar(100) Não

sobremim varchar(100) Não

financeira varchar(100) Não

outras varchar(100) Não

dt_created timestamp Não CURRENT_TIMESTAMP

tabela4:

 

id int(111) Não

licitado varchar(20) Não

licitador varchar(20) Não

pergunta varchar(100) Não

resposta varchar(100) Não

datapergunta datetime Não

 

 

em todas as tabelas, o campo que as une é:

 

tabela1---> user_name

tabela2---> userlicitado

tabela3---> userlicitado

tabela4---> licitado

Compartilhar este post


Link para o post
Compartilhar em outros sites

o ideal era você usar id para relacionar as outras tabelas, mas vamos lah

select t1.*,t2.*,t3.*,t4.* from tabela1 t1 inner join tabela2 t2 on t1.user_name = t2.userlicitado 
inner join tabela3 t3 on t1.user_name = t3.userlicitado inner join tabela4 t4 on t1.user_name = t4.licitado where t1.id = $variavel_recebida
assim vai conseguir acessar todos os campos da tabela, mas você pode escolher os campos das tabelas que você ker.

lembrando que o inner join une as tabelas com relacionamento obrigatório.

Compartilhar este post


Link para o post
Compartilhar em outros sites

o ideal era você usar id para relacionar as outras tabelas, mas vamos lah

select t1.*,t2.*,t3.*,t4.* from tabela1 t1 inner join tabela2 t2 on t1.user_name = t2.userlicitado 
inner join tabela3 t3 on t1.user_name = t3.userlicitado inner join tabela4 t4 on t1.user_name = t4.licitado where t1.id = $variavel_recebida
assim vai conseguir acessar todos os campos da tabela, mas você pode escolher os campos das tabelas que você ker.

lembrando que o inner join une as tabelas com relacionamento obrigatório.

 

 

boas novamente. eu reparei nessa consulta e consegui fazê-la... agora como faço para quando clicar no link, que será o username no website, mude de página e apresente apenas os resultados referentes a esse user?

 

este é o código da página principal:

 

<?php require_once('leilao.php'); ?>
<?php
if (!function_exists("GetSQLValueString")) {
function GetSQLValueString($theValue, $theType, $theDefinedValue = "", $theNotDefinedValue = "") 
{
  if (PHP_VERSION < 6) {
    $theValue = get_magic_quotes_gpc() ? stripslashes($theValue) : $theValue;
  }

  $theValue = function_exists("mysql_real_escape_string") ? mysql_real_escape_string($theValue) : mysql_escape_string($theValue);

  switch ($theType) {
    case "text":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;    
    case "long":
    case "int":
      $theValue = ($theValue != "") ? intval($theValue) : "NULL";
      break;
    case "double":
      $theValue = ($theValue != "") ? doubleval($theValue) : "NULL";
      break;
    case "date":
      $theValue = ($theValue != "") ? "'" . $theValue . "'" : "NULL";
      break;
    case "defined":
      $theValue = ($theValue != "") ? $theDefinedValue : $theNotDefinedValue;
      break;
  }
  return $theValue;
}
}

$currentPage = $_SERVER["PHP_SELF"];

$maxRows_Recordset1 = 2;
$pageNum_Recordset1 = 0;
if (isset($_GET['pageNum_Recordset1'])) {
  $pageNum_Recordset1 = $_GET['pageNum_Recordset1'];
}
$startRow_Recordset1 = $pageNum_Recordset1 * $maxRows_Recordset1;

mysql_select_db($database_leilao, $leilao);
$query_Recordset1 = "SELECT user_name, valor_emprestimo, prazo, carga_financeira, juro_inicial, juro_maximo, estado_leilao, data_fecho, numero_oferta, valor_financiado, valor_coberto, class_credito, doc_credito, seguro_credito, patrimonio_credito, trabalho_credito FROM leilao1_head";
$query_limit_Recordset1 = sprintf("%s LIMIT %d, %d", $query_Recordset1, $startRow_Recordset1, $maxRows_Recordset1);
$Recordset1 = mysql_query($query_limit_Recordset1, $leilao) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);

if (isset($_GET['totalRows_Recordset1'])) {
  $totalRows_Recordset1 = $_GET['totalRows_Recordset1'];
} else {
  $all_Recordset1 = mysql_query($query_Recordset1);
  $totalRows_Recordset1 = mysql_num_rows($all_Recordset1);
}
$totalPages_Recordset1 = ceil($totalRows_Recordset1/$maxRows_Recordset1)-1;

$queryString_Recordset1 = "";
if (!empty($_SERVER['QUERY_STRING'])) {
  $params = explode("&", $_SERVER['QUERY_STRING']);
  $newParams = array();
  foreach ($params as $param) {
    if (stristr($param, "pageNum_Recordset1") == false && 
        stristr($param, "totalRows_Recordset1") == false) {
      array_push($newParams, $param);
    }
  }
  if (count($newParams) != 0) {
    $queryString_Recordset1 = "&" . htmlentities(implode("&", $newParams));
  }
}
$queryString_Recordset1 = sprintf("&totalRows_Recordset1=%d%s", $totalRows_Recordset1, $queryString_Recordset1);
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.aa {
	text-align: center;
}
.aa1 {
	color: #999;
}
.aa2 {
	font-size: 14px;
	text-align: center;
	color: #00F;
}
.aa {
	text-align: center;
}
.bb {
}
.bb1 {
	text-align: center;
}
.cc {
	color: #FFF;
}
.dd1 {
	text-align: left;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
}
.ww {
	font-size: 9px;
	font-family: Verdana, Geneva, sans-serif;
}
.ee {
	font-size: 12px;
	font-weight: bold;
}
.ee {
	font-size: 12px;
}
.ee {
	font-size: 12px;
}
.ee1 {
	font-size: 18px;
	font-weight: bold;
	color: #F60;
}
.ee {
	font-size: 12px;
}
.ee {
	font-size: 12px;
}
.ee {
	font-size: 12px;
}
.ee {
	font-size: 12px;
}
.ee {
	font-size: 9px;
}
.ee {
	font-size: 12px;
	color: #000;
}
.ee2 {
	font-size: 12px;
	color: #F00;
	font-weight: bold;
}
.ee {
	font-size: 12px;
}
.ee {
	font-size: 12px;
	color: #00F;
	font-family: Verdana, Geneva, sans-serif;
}
.rr {
	border-top-color: #C00;
	border-right-color: #C00;
	border-bottom-color: #C00;
	border-left-color: #C00;
}
.ee5 {
	font-size: 12px;
	font-weight: bold;
	color: #000;
}
.ww .ee .ww .ww .ww {
	color: #000;
}
.ww .ee .ww .ww .ww {
	font-weight: normal;
}
.ww .ee .ww .ww .ww {
	color: #000;
}
.tt1 {
	text-align: center;
}
-->
</style>
</head>

<body class="tt1">

<p> </p>
<p> </p>
<table width="563" height="287" border="0" align="center" cellpadding="0" cellspacing="0" style="border-left-color: #FFF; border-bottom-color: #FFF; border-right-color: #FFF; border-top-color: #FFF; border-left-style: none; border-bottom-style: none; border-right-style: none; border-top-style: none;">
 <?php do { ?>
  <tr>
    <td width="251" height="46"><span class="ww">Utilizador:</span> <a href="http://www.comunidadelusa.com/index_files/leilaoactivo2.php" class="ee"><?php echo $row_Recordset1['user_name']; ?></a></td>
    <td width="158"><span class="ww">Carga Financeira: </span><span class="ee5"><?php echo $row_Recordset1['carga_financeira']*100; ?></span><span class="ee"> <span class="ee5">%</span></span></td>
    <td width="146"><span class="ww">Estado do Leilão: </span><span class="ee2"><?php echo $row_Recordset1['estado_leilao']; ?></span></td>
  </tr>
  <tr>
    <td height="44"><span class="ww">Valor do Empréstimo: </span><span class="ee5"><?php echo $row_Recordset1['valor_emprestimo']; ?> €</span></td>
    <td><span class="ww">Juro Inicial:</span> <span class="ee5"><?php echo $row_Recordset1['juro_inicial']; ?> %</span></td>
    <td><span class="ww">Data de Fecho: </span><span class="ee2"><?php echo date('Y-m-d', strtotime($linha->data_fecho ."+8 day")); ?></span></td>
  </tr>
  <tr>
    <td height="41"><span class="ww">Prazo de Pagamento: </span><span class="ee5"><?php echo $row_Recordset1['prazo']; ?></span></td>
    <td><span class="ww">Juro Máximo:</span> <span class="ee5"><?php echo $row_Recordset1['juro_maximo']; ?> %</span></td>
    <td><span class="ww">Número de Ofertas: </span><span class="ee5"><?php echo $row_Recordset1['numero_oferta']; ?></span></td>
  </tr>
  <tr>
    <td height="45"><span class="ww">Classificação de Crédito:   </span><span class="ee1"><?php echo $row_Recordset1['class_credito']; ?></span></td>
    <td><span class="ww"><span class="ee"><span class="ww"><span class="ww"><span class="ww">Valor Financiado</span>:</span></span></span></span><span class="ee5"><?php echo $row_Recordset1['valor_financiado']; ?> €</span></td>
    <td><span class="ww">Valor Coberto:</span><span class="ee5"><?php echo $row_Recordset1['valor_coberto']; ?> %</span></td>
  </tr>
  <tr>
    <td><?php echo $row_Recordset1['doc_credito']; ?> | <?php echo $row_Recordset1['seguro_credito']; ?> | <?php echo $row_Recordset1['patrimonio_credito']; ?> | <?php echo $row_Recordset1['trabalho_credito']; ?></td>
    <td class="aa"><a href="http://www.comunidadelusa.com/index_files/licitar1.php"></a></td>
    <td bgcolor="#999999" class="aa"><a href="http://www.comunidadelusa.com/index_files/licitar1.php">Licitar</a></td>
  </tr>
  <tr class="rr">
    <td height="21" bgcolor="#CC0000"> </td>
    <td bgcolor="#CC0000" class="aa"> </td>
    <td bgcolor="#CC0000" class="aa"> </td>
  </tr>
  <?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
</table>
<table border="0" align="center">
<tr>
    <td><?php if ($pageNum_Recordset1 > 0) { // Show if not first page ?>
        <span class="bb"><a href="<?php printf("%s?pageNum_Recordset1=%d%s", $currentPage, 0, $queryString_Recordset1); ?>">First</a>
        <?php } // Show if not first page ?>
  </span></td>
    <td><?php if ($pageNum_Recordset1 > 0) { // Show if not first page ?>
        <span class="bb"><a href="<?php printf("%s?pageNum_Recordset1=%d%s", $currentPage, max(0, $pageNum_Recordset1 - 1), $queryString_Recordset1); ?>">Previous</a>
        <?php } // Show if not first page ?>
      </span></td>
    <td><?php if ($pageNum_Recordset1 < $totalPages_Recordset1) { // Show if not last page ?>
        <span class="bb"><a href="<?php printf("%s?pageNum_Recordset1=%d%s", $currentPage, min($totalPages_Recordset1, $pageNum_Recordset1 + 1), $queryString_Recordset1); ?>">Next</a>
        <?php } // Show if not last page ?>
      </span></td>
    <td><?php if ($pageNum_Recordset1 < $totalPages_Recordset1) { // Show if not last page ?>
        <span class="bb"><a href="<?php printf("%s?pageNum_Recordset1=%d%s", $currentPage, $totalPages_Recordset1, $queryString_Recordset1); ?>">Last</a>
        <?php } // Show if not last page ?>
      </span></td>
  </tr>
<span class="bb"> <span class="bb1">
<p>Registos <?php echo ($startRow_Recordset1 + 1) ?> a <?php echo min($startRow_Recordset1 + $maxRows_Recordset1, $totalRows_Recordset1) ?> de <?php echo $totalRows_Recordset1 ?></p>

</p>
</body>
</html>
<?php
mysql_free_result($Recordset1);
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

pra q q você ker q tenha link se só vai para a pagina do usuario que logar, quando ele logar você pode direcionar direto para página dele.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.