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.
Bom dia!
Estou fazendo um select em uma tabela de cupom fiscal e preciso que me mostre o operador do caixa e o supervisor que liberou a venda, que no caso é convênio.
A consulta que montei é a seguinte:
select c.m00ad as CUPOM,
c.m00ac as PDV,
c.m02ak as VALOR,
p.descricao as FINALIZADORA,
c.m02ah as OPERADOR,
f.nome as NOME_OP,
c.m02ao as SUPERVISOR,
f.nome as NOME_SUP
from zan_m02 c inner join tab_funcionario f
on c.m02ao = f.cod_funcionario
inner join tab_finalizadora p
on c.m02ai = p.cod_finalizadora
where c.m00af = to_date('09/03/20','dd/mm/yy')
and c.m00za = 3
and c.m00ac = 9
and c.m00ad = 379678
group by c.m00ad,c.m00ac,c.m02ak,p.descricao,c.m02ah,f.nome,c.m02ao;
A consulta me retorna o seguinte resultado:
Como podem ver, repetiu o mesmo nome (operador e supervisor), sendo que o código é diferente.
Isso acontece por que na tabela de funcionário o campo NOME serve para operador e supervisor e o que diferencia se é supervisor ou operador temos mais duas outras tabelas. A estrutura é assim:
tab_funcionario -> temos o campo cod_funcionario e nome (todos os funcionários cadastrados são armazenados nessa tabela)
tab_perfil -> temos os campos cod_perfil e descricao (todos os perfis cadastrados são armazenados nessa tabela)
tab_perfil_funcionario -> temos os campos cod_funcionario e cod_perfil (tabela que relaciona as tabelas tab_funcionario e tab_perfil)
A única coisa que preciso é que apareça no NOME_OP o nome do operador e não o nome do supervisor igual está aparecendo.
Aqui OK
SELECT ticket.*, clientes.* FROM ticket JOIN clientes ON ticket.id_cliente = clientes.id
Mas aqui duplica, porque um ticket pode ter vários serviços cadastrados.
ticket.*, clientes.*, servico_ticket.* FROM ticket
JOIN clientes ON ticket.id_cliente = clientes.id
JOIN servico_ticket ON ticket.id = servico_ticket.id_ticket
A listagem tem que ser apenas dos tickets cadastrados, tentei colocar DISTINCT ticket.* mas não adianta.
o resultado deveria ser algo assim:
12344 luiz 10.00
12345 henrique 20.00
mas se o ticket do luiz tiver 3 serviços cadastrados