Goedemorgen,

ik heb een probleem met een twee Radiobuttons in een formulier. Ik wil graag dat op de redirect pagina, de score uitslag verschijnt van de gekozen antwoorden. De originele functie werkt met een PHP POST (bron: http://css-tricks.com/building-a-simple-quiz/) maar in combinatie met mijn javascript bestand, krijg ik het niet werkend..

Heeft iemand een oplossing hierop?

Bedankt voor de moeite..

FORMULIER

<form id="ContactForm" action="">

<section class="st-panel" id="st-panel-2">
						<div class="st-deco"></div>
                            <h2>Toelichting:<br />Neem plaats op de eerste tegel en wek energie op. Zodra de vraag op het scherm verschijnt, kiest u één van de vier volgende antwoorden.</h2>
                                <div class="sizer">
                                    <label class="label_radio" for="vraag1_A"><input name="vraag1_antwoorden" id="vraag1_A" value="A" type="radio" />A) Geen eis</label>
                                    <label class="label_radio" for="vraag1_B"><input name="vraag1_antwoorden" id="vraag1_B" value="B" type="radio" />B) 0,1 Ohm</label>
                                    <label class="label_radio" for="vraag1_C"><input name="vraag1_antwoorden" id="vraag1_C" value="C" type="radio" />C) 1 Ohm</label>
                                    <label class="label_radio" for="vraag1_D"><input name="vraag1_antwoorden" id="vraag1_D" value="D" type="radio" />D) 10 Ohm</label>
                                </div>
                                <span id="vraag1_antwoorden" class="foutmelding_antwoorden" style="display:none;"></span>
					</section>
<input type="button" class="button_verzenden black" id="send" value="VERSTUUR" /><input type="hidden" id="newcontact" name="newcontact" value="1"></input></form>


JAVASCRIPT VOOR VERZENDEN MAIL, DATABASE TOEVOEGING

$(document).ready(function() {
	contact.initEventHandlers();
});
var contact = {
	initEventHandlers	: function() {
		/* clicking the submit form */
		$('#send').bind('click',function(event){
			$('#loader').show();
			setTimeout('contact.ContactFormSubmit()',500);
		});
		/* remove messages when user wants to correct (focus on the input) */
		$('.inplaceError,.foutmelding_antwoorden',$('#ContactForm')).bind('focus',function(){
			var $this 		= $(this);
			var $error_elem = $this.next();
			if($error_elem.length)
				$error_elem.fadeOut(function(){$(this).empty()});
			$('#success_message').empty();	
		});
		/* user presses enter - submits form */
		$('#ContactForm input,#ContactForm textarea').keypress(function (e) {
			if ((e.which && e.which == 13) || (e.keyCode && e.keyCode == 13)) {  
				$("#send").click();
				return false;  
			} 
			else  
				return true;  
		});
	},
	ContactFormSubmit	: function() {
		$.ajax({
			   type		: 'POST',
			   url		: 'php/contact.php?ts='+new Date().getTime(),
			   dataType	: 'json',
			   data		: $('#ContactForm').serialize(),
			   success	: function(data,textStatus){
							  //hide the ajax loader
							  $('#loader').hide();
							  if(data.result == '1'){
							      //show success message
								$('#midden').remove();
window.location = "result.php"
							  }
							  else if(data.result == '-1'){
                                  for(var i=0; i < data.errors.length; ++i ){
                                      if(data.errors[i].value!='') {
                                        var elm = $("#"+data.errors[i].name);
                                        // we gaan kijken welk soort element elm is.
                                        // wanneer dat element een span is, moeten we geen nieuwe span meer aanmaken...
                                        switch (elm[0].tagName.toLowerCase()) {
                                          case 'span':
                                            elm.html(data.errors[i].value).fadeIn();
                                            break;
                                          default:
                                            elm.next().html('<span class="foutmelding_antwoorden">'+data.errors[i].value+'</span>').fadeIn();
                                            break;
                                        }
                                      }
                                      
                                          $("#"+data.errors[i].name).next().html('<span class="foutmelding_antwoorden">'+data.errors[i].value+'</span>').fadeIn();
                                  }
                              } 					  
						  },
			   error	: function(data,textStatus){}
		});
	}  
};


RESULT PAGINA

<body>
    <div id="begin_framework">
    <strong>Quiz</strong><br /><br />Bedankt voor uw participatie, u kunt hieronder uw score vinden en uw certificaat uitprinten.
    
	<?php
                
        $answer1 = $_POST['vraag1_antwoorden'];
        $answer2 = $_POST['vraag2_antwoorden'];
        
        $totalCorrect = 0;
        
        if ($answer1 == "C") { $totalCorrect++; }
        if ($answer2 == "A") { $totalCorrect++; }
        
        echo "<div id='results'>$totalCorrect / 2 correct</div>";
                
    ?>

    </div>
</body>
Sebastian Veldman op 17/08/2012 14:07:27

Waar zou dat vermeld moeten worden?

Uhm, geen idee, jij bouwt het script.... Of het kan: ja, maar dat wist je waarschijnlijk al. Erg veel meer kan ik er niet op zeggen.

Oke thanks Erwin voor je hulp!

Reageren