Ir para conteúdo

POWERED BY:

Arquivado

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

STHELT

filtrar consulta mysql

Recommended Posts

tenho duas tabelas, como faço para filtrar apenas campos com conteudo iguais,

exemplo:

tabela usuarios: usu_id

tabela noticias: not_id

 

como consulto e mostra apenas quando usu_id e not_id ter valores iguais?

Compartilhar este post


Link para o post
Compartilhar em outros sites

eu fiz daquele geito mas ele não esta filtrando... esta mostrando todos os dados da tabela....

 

<?php
mysql_select_db($database_ConnImasters, $ConnImasters);
$query_rsRelatorioplaylist = "SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id ORDER BY not_usuario_id DESC";
$rsRelatorioplaylist = mysql_query($query_rsRelatorioplaylist, $ConnImasters) or die(mysql_error());
$row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist);
$totalRows_rsRelatorioplaylist = mysql_num_rows($rsRelatorioplaylist);
?>

html:

<?php do { ?>
     	<tr>
     			<td><?php echo $row_rsRelatorioplaylist['nome']; ?></td>
     			<td><a href="noticia_excluir.php?not_id=<?php echo $row_rsRelatorioplaylist['not_id']; ?>"><img src="../img/delete.gif" width="16" height="16" /></a></td>
   		</tr>
     	<?php } while ($row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist)); ?>
     	</table>

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Estou achando que você está querendo uma coisa e estamos explicando outra... Por acaso, você quer saber somente as notícias de um usuário específico?

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mais ou menos assim

 

"SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id WHERE usu_id = 'id_do_usuario' ORDER BY not_usuario_id DESC";

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

agora ele não esta moostrando nada...

 

olhe como esta o codigo:

<?php
mysql_select_db($database_ConnImasters, $ConnImasters);
$query_rsRelatorioplaylist = "SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id WHERE usu_id = 'id_do_usuario' ORDER BY not_usuario_id DESC";
$rsRelatorioplaylist = mysql_query($query_rsRelatorioplaylist, $ConnImasters) or die(mysql_error());
$row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist);
$totalRows_rsRelatorioplaylist = mysql_num_rows($rsRelatorioplaylist);
?>
<?php do { ?>
     	<tr>
     			<td><?php echo $row_rsRelatorioplaylist['nome']; ?></td>
     			<td><a href="noticia_excluir.php?not_id=<?php echo $row_rsRelatorioplaylist['not_id']; ?>"><img src="../img/delete.gif" width="16" height="16" /></a></td>
   		</tr>
     	<?php } while ($row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist)); ?>
     	</table>

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigão, eu deu um exemplo... Leia o código que eu passei, especialmente nesta parte.

 

WHERE usu_id = 'id_do_usuario'

Esta é a parte que faz a condição. usu_id é o campo da condição e o que está entre aspas é o valor que vai ser usado para identificar o usuário.

Imaginemos que o campo a ser usado vai ser o usu_id mesmo e que você quer as notícias do usuário 1. Seu código ficaria assim.

 

$query_rsRelatorioplaylist = "SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id WHERE usu_id = 1 ORDER BY not_usuario_id DESC";

Como você não vai poder colocar o número do id estático, você deve colocar a variável que tenha o valor deste id ali naquela condição.

 

Compreendeu?

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

como? eu não sei muito php... estou fazendo pelo Dreamweaver...

olhe como esta o codigo...: o que eu tenho q fazer?

 

<?php require_once('../Connections/ConnImasters.php'); ?>
<?php
//initialize the session
session_start();

// ** Logout the current user. **
$logoutAction = $_SERVER['PHP_SELF']."?doLogout=true";
if ((isset($_SERVER['QUERY_STRING'])) && ($_SERVER['QUERY_STRING'] != "")){
  $logoutAction .="&". htmlentities($_SERVER['QUERY_STRING']);
}

if ((isset($_GET['doLogout'])) &&($_GET['doLogout']=="true")){
  //to fully log out a visitor we need to clear the session varialbles
  session_unregister('MM_Username');
  session_unregister('MM_UserGroup');
	
  $logoutGoTo = "login.php";
  if ($logoutGoTo) {
    header("Location: $logoutGoTo");
    exit;
  }
}
?>
<?php

$MM_authorizedUsers = "";
$MM_donotCheckaccess = "true";

// *** Restrict Access To Page: Grant or deny access to this page
function isAuthorized($strUsers, $strGroups, $UserName, $UserGroup) { 
  // For security, start by assuming the visitor is NOT authorized. 
  $isValid = False; 

  // When a visitor has logged into this site, the Session variable MM_Username set equal to their username. 
  // Therefore, we know that a user is NOT logged in if that Session variable is blank. 
  if (!empty($UserName)) { 
    // Besides being logged in, you may restrict access to only certain users based on an ID established when they login. 
    // Parse the strings into arrays. 
    $arrUsers = Explode(",", $strUsers); 
    $arrGroups = Explode(",", $strGroups); 
    if (in_array($UserName, $arrUsers)) { 
      $isValid = true; 
    } 
    // Or, you may restrict access to only certain users based on their username. 
    if (in_array($UserGroup, $arrGroups)) { 
      $isValid = true; 
    } 
    if (($strUsers == "") && true) { 
      $isValid = true; 
    } 
  } 
  return $isValid; 
}

$MM_restrictGoTo = "login.php";
if (!((isset($_SESSION['MM_Username'])) && (isAuthorized("",$MM_authorizedUsers, $_SESSION['MM_Username'], $_SESSION['MM_UserGroup'])))) {   
  $MM_qsChar = "?";
  $MM_referrer = $_SERVER['PHP_SELF'];
  if (strpos($MM_restrictGoTo, "?")) $MM_qsChar = "&";
  if (isset($QUERY_STRING) && strlen($QUERY_STRING) > 0) 
  $MM_referrer .= "?" . $QUERY_STRING;
  $MM_restrictGoTo = $MM_restrictGoTo. $MM_qsChar . "accesscheck=" . urlencode($MM_referrer);
  header("Location: ". $MM_restrictGoTo); 
  exit;
}
?>
<?php
mysql_select_db($database_ConnImasters, $ConnImasters);
$query_rsRelatorioplaylist = "SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id WHERE usu_id = not_usuario_id ORDER BY not_usuario_id DESC";
$rsRelatorioplaylist = mysql_query($query_rsRelatorioplaylist, $ConnImasters) or die(mysql_error());
$row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist);
$totalRows_rsRelatorioplaylist = mysql_num_rows($rsRelatorioplaylist);
?>
<!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=iso-8859-1" />
</head>
<body>
	
	<div>
		<ul>
			<li><a href="index.php">Início do Admin</a></li>
			<li><a href="<?php echo $logoutAction ?>">Log out</a></li>
			<li><a href="cadastro_usuario.php">Cadastrar usuário</a></li>
			<li><a href="noticia_inserir.php">Cadastrar notícias</a></li>
		</ul>
	</div>
	
<table width="100%"  border="0" cellspacing="0" cellpadding="0">
     	<tr>
     		<th scope="col">Título</th>
     		<th scope="col">Data</th>
     		<th scope="col">Status</th>
     		<th scope="col">Responsável</th>
     		<th colspan="2" scope="col"> </th>
     		</tr>
     	<?php do { ?>
     	<tr>
     			<td><?php echo $row_rsRelatorioplaylist['nome']; ?></td>
     			<td><a href="noticia_excluir.php?not_id=<?php echo $row_rsRelatorioplaylist['not_id']; ?>"><img src="../img/delete.gif" width="16" height="16" /></a></td>
   		</tr>
     	<?php } while ($row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist)); ?>
     	</table>

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha... Vou tentar te explicar e você faz sozinho...

 

"SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id WHERE usu_id = 1 ORDER BY not_usuario_id DESC";

Vamos traduzir o que está sendo enviado para o banco de dados.

 

SELECIONE *(todos os campos) DA TABELA playlist JUNTANDO COM a tabela usuarios ONDE o campo playlist.not_usuario_id for igual a usuarios.usu_id AONDE o campo usu_id for igual a ?????

 

usu_id é o nome do campo na tabela playlist que identifica de qual usuário é aquele playlist e aonde tem os pontos de interrogação é o valor deste campo. Então, ali você tem que por a variável que contenha este valor.

 

Carlos Eduardo

Compartilhar este post


Link para o post
Compartilhar em outros sites

olha como eu fiz agora, mas esta dando erro de sintese...(You have an error in your SQL syntax. Check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY not_id DESC' at line..)

 

mysql_select_db($database_ConnImasters, $ConnImasters);

$query_rsRelatorioplaylist = "SELECT * FROM playlist INNER JOIN usuarios ON playlist.not_usuario_id = usuarios.usu_id WHERE usu_id = " . $row_Recordset1['usu_id'] ."  ORDER BY not_id DESC";
$rsRelatorioplaylist = mysql_query($query_rsRelatorioplaylist, $ConnImasters) or die(mysql_error());
$row_rsRelatorioplaylist = mysql_fetch_assoc($rsRelatorioplaylist);
$totalRows_rsRelatorioplaylist = mysql_num_rows($rsRelatorioplaylist);

mysql_select_db($database_ConnImasters, $ConnImasters);
$query_Recordset1 = "SELECT usu_id FROM usuarios";
$Recordset1 = mysql_query($query_Recordset1, $ConnImasters) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);

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.