Ir para conteúdo

POWERED BY:

Arquivado

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

Barbyzita

[Resolvido] Não consigo enviar respostas de alunos para o banco d

Recommended Posts

Vixe, Fabiano, continua vazio o campo... :/

 

Tabela:resultado_prova

 

codprova username nomealuno pontos

1 Barbyzita1 2

 

 

codprova= 1

username= Barbyzita1

nomealuno= ""

pontos=2

Compartilhar este post


Link para o post
Compartilhar em outros sites

Oi, Fabiano!

 

Demorei ao responder, posto que estava atarefada com a finalização do aplicativo.

Resolvi retirar o username, até pq, oq importa mesmo é deixar o nome completo do aluno. Eu q estava querendo fazer além do q haviam solicitado. hehe

Meu aplicativo já está em teste beta. Eu devo muita coisa a vcs. :)

Obrigada!

Compartilhar este post


Link para o post
Compartilhar em outros sites

No lugar do username, deixei o nome do aluno. Ele "entrará" com seu nome completo cadastrado e com sua senha, aí é só felicidade! Resolvendo a prova, ele tb só terá a oportunidade de visualizar o total de pontos e se foi aprovado ou não. "Curto e grosso". Pelo menos foi oq pediram para ser feito. Havia pensado na possibilidade do aluno, posteriormente, ter acesso às perguntas certas e as erradas que foram marcadas, no entanto, não é do interesse da escola. Fazer oq, né? Só sigo ordens... hehehe

Inclusive, os funcionários e/ou professores terão acesso apenas à lista dos aprovados, se bem q acabei deixando uma listinha com todos os alunos e outra com os reprovados, somente à cargo de consciência! Vai q dá algum erro... O intuito é n dar chance do aluno reclamar qq nota. Se o nome estiver na lista de aprovados, ótimo, senão, "paciência, tente outra vez"! Sistema insano...

Compartilhar este post


Link para o post
Compartilhar em outros sites

hehehe

Obrigada!

 

Acabei colocando isso aqui para n haver nomes repetidos:

 

(...)

 

if($erro==0)

{

$sql="select * from aluno where nomealuno='$nomealuno'";

$resultado=mysql_query($sql) or die ("Problema na Consulta");

$linha=mysql_fetch_array($resultado);

$codaluno=$linha["codaluno"];

if ($codaluno=="")

{

 

$sql="INSERT into aluno(codaluno,nomealuno,genero,endaluno,cpfaluno,rgaluno,senhaaluno) values ('$codaluno','$nomealuno','$genero','$endaluno','$cpfaluno','$rgaluno','$senhaaluno')";

mysql_query($sql) or die ("Erro no Cadastro!".mysql_error());

echo "<script>alert('Dados cadastrados com Sucesso!');location.href='f_aluno.html';

</script>";

}

else

{

echo "<script>alert('Usuário já Cadastrado!');location.href='f_aluno.html';

</script>";

}

}

?>

 

-->Se bem q poderia fazer a mesma coisa com o CPF, seria mais garantido. Acontece q nem todos os alunos o possuem. São jovens estudantes de escola pública e estamos procurando fazer um trabalho social de integração. Hj estou testando e modificando pouca coisa, amanhã será com 10 alunos da escola e, posteriormente, professores e funcionários. Esse trabalho é "trabalhoso"(rsrsrs) mas, no final td fica lindo! Infelizmente ainda n possuo lá grandes conhecimentos de webdesigner... Quem sabe futuramente? Aí outra equipe dará um layout mais "robusto" e atrativo. :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Nhá! Era bom demais pra ser verdade. Sempre surge mais alguma dúvida. hehehe

Agora querem q eu liste os alunos aprovados, mas com seus respectivos dados para contato. Acontece q terei q buscar esses dados em tabelas distintas. Na tabela aluno, tenhos os dados pessoais, como telaluno e celaluno. Na tabela resultado_prova: nomealuno, pontos e desempenho.

Estava apenas listando nomealuno e pontuação dos aprovados, mas eles querem o telaluno e celaluno tb. Tentei algumas coisas aqui e n deu certo, pq fica aparecendo: Column 'nomealuno' in field list is ambiguous.

Segue o programa para listagem:

<?php
include ("conecta.php");

$nomealuno=$_POST["nomealuno"];
$pontos=$_POST["pontos"];

$sql="SELECT * from resultado_prova where desempenho='APROVADO' order by nomealuno asc";
	$resultado=mysql_query($sql) or die (mysql_error());
	$contador=1;
	while($linha=mysql_fetch_array($resultado)){
		$nomealuno=$linha['nomealuno'];
		$pontos=$linha['pontos'];
		echo $contador++;
		echo " 
		<b>Aluno(a):</b> ".$nomealuno."<br>";
		echo " 
		<b>Nota:</b> ".$pontos."<p>";
	}
?>
<center><a href="administra.php">Voltar</a></center>

Abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá novamente

 

Bom, como comentei a algum tempo atrás eu gravaria a ID do aluno na tabela resultado_prova, ao

 

invés de seu nome.

Mas, no seu caso acredito que ficaria + ou - assim:

 

$sql = mysql_query("SELECT alunos.nomealuno, alunos.telaluno, alunos.celaluno, resultado_prova.desempenho
FROM alunos
INNER JOIN resultado_prova ON alunos.nomealuno = resultado_prova.nomealuno
ORDER BY alunos.nome_aluno ASC") or die(mysql_error());

while($dados = mysql_fetch_array($sql))
{
  echo 'Nome do aluno: '.$dados["nomealuno"].'<br>';
  echo 'Telefone: '.$dados["telaluno"].'<br>';
  echo 'Celular: '.$dados["celaluno"].'<br>';
  echo 'Desempenho: '.$dados["desempenho"].'<br>';
}

Assim, você faz a seleção das duas tabelas. Trazendo todos os dados do aluno além de seu resultado na prova. O INNER JOIN faz a verificação se o nome do aluno está presente nas duas tabelas

 

Espero q ajude ;)

Compartilhar este post


Link para o post
Compartilhar em outros sites

RESOLVIDO!

 

$sql="SELECT a.nomealuno,a.telaluno,a.celaluno, r.pontos from aluno a,resultado_prova r where a.nomealuno=r.nomealuno and desempenho='APROVADO' order by nomealuno asc";

 

:D

 

Obrigada, mais uma vez.

 

Em relação ao ID, terei que fazer essa modificação mais tarde. Como não tenho muitos conhecimentos em Banco de Dados, apresentei essa deficiência, ou erro de normalização, como meu professor explicou. Agora terei q fazer uma pesquisa sobre isso... hehehehe E consertar, posteriormente, essa lacuna. Por enquanto, esse "armengue" vai servir.

 

Obrigada!!

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.