Ir para conteúdo
Fórum Script Brasil
  • 0

Inner Join


koodez

Pergunta

Pessoal estou tendo uma dor de cabeça para fazer com que funcione uma simples substituição de id pelo nome de uma categoria.

Segue o código:

$sub = $_GET['sub'];

$sql = "SELECT *
FROM produtos p
INNER JOIN sub_categorias s
ON  p.subcategoria = s.subcategoria
WHERE p.subcategoria = '$sub' 
ORDER BY s.subcategoria LIMIT 1";

$sql2  = "SELECT * 
FROM produtos 
WHERE subcategoria = '$sub' 
ORDER BY id";

if ( ($r = mysql_query($sql2)) && ($s = mysql_query($sql)) ) {
$linha = 1;
     while ( ($d=mysql_fetch_array($r)) || ($e=mysql_fetch_array($s)) )
 {

$id_produto   = $d['id'];
$nome_produto = $d['nome'];

$subcategoria = $e["subcategoria"];

echo "<h2>".$subcategoria."</h2>";

echo "
<ul>
    <li>
        <p>".$nome_produto."</p>
    </li>
</ul>

Caso alguém consiga ajudar, desde já, agradeço.

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0

Koodez,

Talvez isso caberia a seção de Banco de Dados, mas vamos lá.

Segue seu código

$sql = "SELECT *
FROM produtos p
INNER JOIN sub_categorias s ON p.subcategoria = s.subcategoria
WHERE p.subcategoria = '$sub' 
ORDER BY s.subcategoria LIMIT 1 ";

$sql2  = "SELECT * 
FROM produtos WHERE subcategoria = '$sub' 
ORDER BY id";
no primeiro SELECT você está pegando só as colunas da tabela PRODUTOS, e usando um JOIN CONDICIONAL com CATEGORIAS, caso você queira ver o nome da CATEGORIA, traga para o select os campos da tabela categoria, ficaria assim:
SELECT P.*, C.* FROM PRODUTOS P INNER JOIN CATEGORIAS C ON (P.IDCATEGORIA = C.IDCATEGORIA)
Para resgatar os valores, seria
$result = mysql_query("SELECT P.*, C.* FROM PRODUTOS P INNER JOIN CATEGORIAS C ON (P.IDCATEGORIA = C.IDCATEGORIA)")

while ($row = mysql_fetech_array($result)){

echo ".$row["nome_categoria"].";
echo ".$row["nome_produto"]."; //ai você escolhe os campos
}

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,5k
×
×
  • Criar Novo...