Tenho uma tabela Itens com os campos Descrição e nome do produto, quando eu coloco no select.
Eu gostaria que me retorna-se, todos os nomes dos produtos e retornar apenas uma vez a Descrição.
Select com ORDER BY
"SELECT DISTINCT c.id, c.descricao, i.id_categoria, i.descricao_produto, i.id_item, i.nome_produto, i.imagem, i.preco, i.qntdade FROM
tab_categoria AS c JOIN tab_itens AS i ON c.id = i.id_categoria WHERE c.id = i.id_categoria AND i.id_empresa = '$id_empresa' ORDER BY c.descricao"
Select com GROUP BY, até da certo, mas retorna apenas um produto.
"SELECT DISTINCT c.id, c.descricao, i.id_categoria, i.descricao_produto, i.id_item, i.nome_produto, i.imagem, i.preco, i.qntdade FROM
tab_categoria AS c JOIN tab_itens AS i ON c.id = i.id_categoria WHERE c.id = i.id_categoria AND i.id_empresa = '$id_empresa' GROUP BY c.descricao"
Veja como esta ficando do jeito que eu estou fazendo, com ORDER BY
Select_com_ORDER_BY
Quando faço a consulta no phpMyadmim consigo o resultado esperado. Mas pelo visto não estou sabendo fazer direito em PHP. O que estou errando? Porque não consigo fazer a média (prtm) "aparecer"?
abaixo meu código.
<?php
if (isset($_GET['$id_aluno'])){
$id_aluno = addslashes($_GET['$id_aluno']);}
elseif (isset($_GET['id_aluno'])){
$id_aluno = addslashes($_GET['id_aluno']);}//addslashes evita sqlinjection
else{
$id_aluno=("");
}
$informacao=$con->prepare("SELECT a.id_aluno, a.nome, SUM(((b.prt*5)+(m.prt*3)+(v.prt*2))/10 ) as prtm
FROM aluno a
inner join avb1 b on a.id_aluno = b.id_aluno
inner join avm2 m on a.id_aluno = m.id_aluno
inner join avp v on a.id_aluno = v.id_aluno
group by a.id_aluno, a.nome
WHERE a.id_aluno = $id_usuario");
$informacao->execute();
?>
<!------------>
<table class="cBolt">
<tr>
<td>Avaliação</td>
<td>Bim.</td>
<td>Português</td>
</tr>
<?php
while($linha=$informacao->fetch(PDO::FETCH_ASSOC)){
?>
<tr>
<td>Média</td>
<td>1º</td>
<td><?php echo $linha['prtm'];?></td>
</tr>
<?php
}
?>
</table>
Galera tenha a seguinte duvida, tenho 3 tabelas onde estou trazendo os dados e preciso fazer um count em uma delas
SELECT *
FROM tabela1 AS t1
INNER JOIN tabela2 AS t2 ON t1.idt1 = t2.idt2
INNER JOIN tabela3 AS t3 ON t3.idt3 = t1.idt1
a duvida é: quero manter o SELECT * mas também preciso de COUNT(t3.idT3)
não sei se é possível fazer isso, mas gostaria de ter certeza antes de focar em outra solução
desde já muito grato.
Salve galera, boa tarde a todos.
estou tendo um problema que ainda nao consegui enxergar... faço uma consulta mysql que funciona normalmente no proprio ambiente(mysql) mas ao solicitar a exibição do campo via php gera nao exibe e me tras um alerta.
****codigo php
function monta_avaliacao($cpf){
$query = mysqli_query($_SESSION["conector"],"SELECT c.*, a. cliente AS clientes FROM clientes AS c INNER JOIN avaliacoes AS a ON c.id = a.cliente WHERE c.cpf='$cpf'");
$dados = mysqli_fetch_assoc($query);
print $dados['c.cpf'];
}
*****sainda no html
Notice: Undefined index: c.cpf in C:\xampp\htdocs\acus\inclusoes\funcoes.php on line 29 Notice: Undefined index: a.pe in C:\xampp\htdocs\acus\inclusoes\funcoes.php on line 30
tenho um arquivo com as funções, e apenas mando os parametros.
Poderiam me ajudar com a seguinte condição:
<?php if ($row['facebook'] != "") {
echo '<a class="btn btn-dark btn-social mx-2" href="<?php echo $row['facebook']; ?>"><i class="fab fa-facebook-f"></i></a>';
} else {
echo '';
} ?>
Estou recebendo o seguinte erro:
Parse error: syntax error, unexpected 'facebook' (T_STRING), expecting ';' or ',' in C:\xampp\htdocs\biazinha\inicial.php on line 371
A linha 371 é essa:
echo '<a class="btn btn-dark btn-social mx-2" href="<?php echo $row['facebook']; ?>"><i class="fab fa-facebook-f"></i></a>';