Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
ola, estou fazendo um projeto de um quiz, no qual primeiramente fiz com html e javascript. Agora quero enviar as resposta para um banco de dados, eu consigo enviar com o codigo antigo ou terei que refazer em php o codigo?
<div class="cadastrar">
<br>
<br>
<h1>Dog</h1>
<br>
<br>
<table>
<tr>
<td align="center">
<a href="javascript:alternativaClickado (false, ' inclusaoquiz.php')"><input type="hidden" value="Errado" name="resposta">
<img class="opcao" src="imagens/a1.jpeg"></input></a>
</td>
<td align="center">
<a href="javascript:alternativaClickado (true, ' inclusaoquiz.php')"><input type="hidden" name="resposta" value="Correto">
<img class="opcao" src="imagens/a2.jpg"></input>
</td>
<td align="center">
<a href="javascript:alternativaClickado (false, ' inclusaoquiz.php')"><input type="hidden" name="resposta" value="Errado">
<img class="opcao" src="imagens/a3.jpg"></input>
</td>
</tr>
</table>
</div>
codigo do javascript:
function alternativaClickado (correto,proxima) {
var pontuacao;
pontuacao = sessionStorage.getItem("pontos");
if(pontuacao==null) {
pontuacao=0;
}
if (correto==true) { //correto==VERDADE
pontuacao++; //pontuacao=pontuacao+1
sessionStorage.setItem("pontos",pontuacao);
}
location.href=proxima;
}
codigo php:
<?php
mysql_connect('localhost', 'root', '') or die (mysql_error ('ERRO NA CONEXÃO !!!'));
mysql_select_db('senai');
mysql_query("SET NAMES 'utf8'");
mysql_query('SET character_set_connection=utf8');
mysql_query('SET character_set_client=utf8');
mysql_query('SET character_set_results=utf8');
$resposta = $_POST ["resposta"];
$result = "INSERT INTO quizingles(ds_resposta)
VALUES('$resposta')";
mysql_query($result);
mysql_close();
session_start(); // Iniciando a Sessão
if($_SESSION['contador'] = $_SESSION['contador'] +1){
echo $_SESSION['contador'];
}else{
echo "Ocorreu um erro";
}
$cont = $_SESSION['contador'];
if ($cont==2){
header('location:quiz2.html');
}
if ($cont==3){
header('location:quiz3.html');
}
if ($cont==4){
header('location:quiz4.html');
}
if ($cont==5){
header('location:quiz5.html');
}
if ($cont==6){
header('location:quiz6.html');
}
if ($cont==7){
header('location:quiz7.html');
}
if ($cont==8){
header('location:quiz8.html');
}
if ($cont==9){
header('location:quiz9.html');
}
if ($cont==10){
header('location:quiz10.html');
}
if ($cont==11){
header('location:quiz11.html');
}
if ($cont==12){
header('location:quiz12.html');
}
if ($cont==13){
header('location:quiz13.html');
}
if ($cont==14){
header('location:quiz14.html');
}
if ($cont==15){
header('location:quiz15.html');
}
if ($cont==16){
header('location:quiz16.html');
}
if ($cont==17){
header('location:quiz17.html');
}
if ($cont==18){
header('location:quiz18.html');
}
if ($cont==19){
header('location:quiz19.html');
}
if ($cont==20){
header('location:quiz20.html');
}
if ($cont >= 21){
header('location:quiz21.html');
$_SESSION['contador']=1;
}
?>>
Bem-vindo ao fórum! :)
Recomendo que leia as regras e orientações de participação
Qual é a sua dúvida?
O código está funcionando? Se não, qual é o problema? Dá erro? Qual?
PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/&
eu queria saber como eu faço para enviar as resposta para o banco de dados, entendeu?
Seu script está salvando o campo "resposta". Você quer salvar outra informação? Explique melhor sua dúvida e por que o script que postou não resolve seu problema
Um tutorial completo sobre as operações com banco de dados: http://blog.ultimatephp.com.br/sistema-de-cadastro-php-mysql-pdo/
Este seu if não tem lógica:
if($_SESSION['contador'] = $_SESSION['contador'] +1){
Qual é sua intenção com isso?
Beraldo, no caso dele, se for obrigado mesmo testar essa eternidade de ifs, o switch seria melhor opção?
ou tavelz jogar as respostas em um array de dar um in_array?
Quanto aos IF's, eu nem usaria um switch. Faria assim:
if ($cont >= 2 && $cont <= 20)
{
$url = $cont . '.html';
header('location: ' . $url);
} header('location: 21.html');
}saquei, boa Beraldo !
>
Seu script está salvando o campo "resposta". Você quer salvar outra informação? Explique melhor sua dúvida e por que o script que postou não resolve seu problema
Um tutorial completo sobre as operações com banco de dados: http://blog.ultimatephp.com.br/sistema-de-cadastro-php-mysql-pdo/
Este seu if não tem lógica:
if($_SESSION['contador'] = $_SESSION['contador'] +1){
Qual é sua intenção com isso?
cada vez que carregar pagina somar mais 1
>
Seu script está salvando o campo "resposta". Você quer salvar outra informação? Explique melhor sua dúvida e por que o script que postou não resolve seu problema
Um tutorial completo sobre as operações com banco de dados: http://blog.ultimatephp.com.br/sistema-de-cadastro-php-mysql-pdo/
Este seu if não tem lógica:
if($_SESSION['contador'] = $_SESSION['contador'] +1){
Qual é sua intenção com isso?
tipo eu quero enviar a resposta do usuario ao BD, o codigo do quiz esta ainda incompleto, é necessario usar um form, mas como eu coloco o javascript:alternativaClickado no form, ele eh utilizado para fazer a soma das corretas e mostrar o resultado no final
>
Quanto aos IF's, eu nem usaria um switch. Faria assim:
if ($cont >= 2 && $cont <= 20)
{
$url = $cont . '.html';
header('location: ' . $url);
} header('location: 21.html');
}
vlww pela dica
cada vez que carregar pagina somar mais 1
Se é só isso, não precisa colocar dentro de um if
tipo eu quero enviar a resposta do usuario ao BD, o codigo do quiz esta ainda incompleto, é necessario usar um form, mas como eu coloco o javascript:alternativaClickado no form, ele eh utilizado para fazer a soma das corretas e mostrar o resultado no final
Você precisa colocar o input dentro de um form e definir o action para o script desejado.
Viu o link que mandei no Post #4?
Além de ver como enviar e receber valores por formulários, também aprende as operações com banco de dados
O link novamente: http://blog.ultimatephp.com.br/sistema-de-cadastro-php-mysql-pdo/
eu faço o form e ok, mas como que eu introduzo a função do chama script para somar a pontuacao?
Recomendo que faça isso no PHP. Se deixar os cálculos por conta do Javascript, o usuário poderá manipular esse dado usando o Inspetor/Firebug.
Se realmente quiser deixar isso com o JS, terá de fazer os cálculos e enviar os dados via Ajax, dentro do próprio JS. jQuery pode facilitar sua vida. Mas se você é iniciante, recomendo, primeiramente, fazer tudo no PHP, depois melhorar a usabilidade com Javascript e Ajax
>
Recomendo que faça isso no PHP. Se deixar os cálculos por conta do Javascript, o usuário poderá manipular esse dado usando o Inspetor/Firebug.
Se realmente quiser deixar isso com o JS, terá de fazer os cálculos e enviar os dados via Ajax, dentro do próprio JS. jQuery pode facilitar sua vida. Mas se você é iniciante, recomendo, primeiramente, fazer tudo no PHP, depois melhorar a usabilidade com Javascript e Ajax
alguma dica de como faço o contador de pontos em php?
Bem-vindo ao fórum! :)
Recomendo que leia as regras e orientações de participação
Qual é a sua dúvida?
O código está funcionando? Se não, qual é o problema? Dá erro? Qual?
PS: funções mysql_* estão obsoletas desde o PHP 5.5 e já foram removidas no PHP 7. Prefira usar MySQLi ou PDO. Veja mais aqui: http://rberaldo.com.br/mysql-obsoleto-php/&