Quizz html / php / js
louise63
-
louise63 -
louise63 -
Bonjour,
J'ai créé un quizz en lien avec ma base de donné. descrption correspond au titre du quizz, question aux 4 questions et texte aux 8 réponses possible. Chaque réponse à une value = 1 ou =0 suivant si elle est juste ou fausse. ( good dans ma table)
J'ai un problème pour le bouton valider de mon quizz. Mon quizz se trouve sur une page quizz.tpl le code est le suivant
et j'ai un main.js avec le code pour activer mon boutton :
mais quand je clique sur mon bouton valider rien ne se passe..
Merci de votre aide
EDIT : AJOUT DES BALISES DE CODE.
J'ai créé un quizz en lien avec ma base de donné. descrption correspond au titre du quizz, question aux 4 questions et texte aux 8 réponses possible. Chaque réponse à une value = 1 ou =0 suivant si elle est juste ou fausse. ( good dans ma table)
J'ai un problème pour le bouton valider de mon quizz. Mon quizz se trouve sur une page quizz.tpl le code est le suivant
{extends file="layout.tpl"}
{block name=body}
{foreach from=$quizzs item=quizz}
<div class='container'>
<section class="col-lg-12">
<div class="title1 col-lg-12">
<p>{$quizz.description}</p>
</div>
</section>
</div>
{/foreach}
{foreach from=$questions item=question}
<div class='container'>
<section class="col-lg-12">
<div class="title col-lg-12">
<p>{$question.question}</p>
</div>
{foreach from=$props[$question.id] item=prop}
<div class=" quizz col-lg-12">
<input type="radio" name="{$prop.id_questions}" value ="{$prop.good}" /> {$prop.texte}
</div>
{/foreach}
</section>
</div>
{/foreach}
<input name="quizzBtn" value="Valider mes réponses" id="quizzBtn" onclick="resultat()" type="button" class="btn btn-default btn-lg">
et j'ai un main.js avec le code pour activer mon boutton :
$(document).ready( function(){
var point = 0;
//calcul du score
function calcul(value,point) {
if (value == 1) { point=point+1;}
else { point=point+0 ; }
}
$('#quizzBtn').click(function(){
function resultat() {calcul();
if (point>3) {alert("Ton score est de "+point+" , bravo !!!!");}
else {alert("Ton score est de "+point+". Ce sera mieux la prochain fois ;)");}
}
});
});
mais quand je clique sur mon bouton valider rien ne se passe..
Merci de votre aide
EDIT : AJOUT DES BALISES DE CODE.
A voir également:
- Quizz html / php / js
- Editeur html - Télécharger - HTML
- Logo quizz - Télécharger - Jeux vidéo
- Easy php - Télécharger - Divers Web & Internet
- Br html ✓ - Forum Webmastering
- Expert php pinterest - Télécharger - Langages
voici mon nouveau code js:
$(document).ready( function(){ var point = 0; //calcul du score function calcul(value,point) { if (value == 1) { point=point+1;} else { point=point+0 ; } } $('#quizzBtn').click(function(){ //function resultat() {calcul(); if (point>3) {alert("Ton score est de "+point+" , bravo !!!!");} else {alert("Ton score est de "+point+". Ce sera mieux la prochain fois ;)");} }); });et mon tpl:
{extends file="layout.tpl"} {block name=body} <from action="quizz" method="POST"> {foreach from=$quizzs item=quizz} <div class='container'> <section class="col-lg-12"> <div class="title1 col-lg-12"> <p>{$quizz.description}</p> </div> </section> </div> {/foreach} {foreach from=$questions item=question} <div class='container'> <section class="col-lg-12"> <div class="title col-lg-12"> <p>{$question.question}</p> </div> {foreach from=$props[$question.id] item=prop} <div class=" quizz col-lg-12"> <input type="radio" name="{$prop.id_questions}" value ="{$prop.good}" /> {$prop.texte} </div> {/foreach} </section> </div> {/foreach} <input name="submit" value="Valider mes réponses" id="quizzBtn" type="button" class="btn btn-default btn-lg"> </from> {/block}EDIT : Ajout des balises de code. (la coloration syntaxique )
Explication disponible ici : https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code
Merci d'y penser à l'avenir.
1 - .. tu ne fais plus appel à la fonction calcul()
2 - Cette fonction calcul attend deux arguments... hors... tu ne lui en passes aucun !
3 - Pour faire ce "calcul" .. il te faut surement boucler sur tout tes boutons radios et, si coché, prendre la VALUE correspondante....
Ce qui, au final, devrait donner un truc du genre :
var point = 0; function calcul() { //Boucle sur tous les input radio cochés $('input:radio:checked').each(function(index, element) { var valueChecked = $(element).val(); point = point + valueChecked ; }); } $(document).ready( function(){ $('#quizzBtn').click(function(){ calcul(); // On relance les calculs console.log("nb points ="+point); //le temps des tests pour affifchage dans la console if (point>3) { alert("Ton score est de "+point+" , bravo !!!!"); }else { alert("Ton score est de "+point+". Ce sera mieux la prochain fois ;)"); } }); });