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.
Então alguém teria uma ideia se existe uma forma mais correta (otimizada) para está executando uma query como essa:
SELECT
pages.p_hash,
pages.p_title,
pages.p_sector,
pages.p_created,
sectors.s_hash,
sectors.s_title,
sectors.s_link,
users.u_hash,
users.u_name
FROM
pages
INNER JOIN
sectors
ON
pages.p_sector = sectors.s_hash
INNER JOIN
users
ON
pages.p_created = users.u_hash
Não que venha ao caso mas por explicação mesmo.
Entro na tabela páginas setores e usuários . Pois tenho que apresentar dados da página, o setor onde se encontra e quem foi o autor
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.