QUIZ probleem

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Front-end developer (React)

Functie Het frontend team bestaat momenteel uit 4 dedicated front-enders en is hard aan het groeien! Ook werken er diverse designers waar je veel mee schakelt. Samen leveren jullie een essentiële bijdrage aan de applicaties die ze voor hun klanten realiseren, jij bent hierin de schakel tussen de eindgebruiker en de slimme backend. Je werkt in het frontend team samen met de backend teams en product owners om te zorgen dat onze applicaties een fijne gebruikerservaring opleveren. Ze werken o.a. met: React, Atomic design, Styled components, JavaScript / TypeScript, NPM, Webpack Blade templates, HTML, SCSS, Git flow. Eisen • HBO

Bekijk vacature »

.NET Developer

Functie omschrijving Jij gaat in de functie van Software Developer werken met C# en .NET framework. Jij gaat maatwerk software ontwikkelen en softwareoplossingen creëren. Daarnaast optimaliseer je de bestaande software. Oplossingen waar de klant echt iets aan heeft, jij krijgt er energie van op dit te realiseren. Je gaat werken in een Microsoft omgeving(ASP.NET) en gebruikt daarnaast C# en MVC. Samen met het huidige IT team binnen deze organisatie verwerk je de wensen van de klant tot een (eind)product. Bedrijfsprofiel Je komt te werken in een klein team van developers, die zich voornamelijk bezighouden met back-end development. Verder staat dit

Bekijk vacature »

Developer Low-code

Dit ga je doen Low-code ontwikkeling van software voor landelijk bekende organisaties; Opleveren van mooie eindproducten, middels de Agile methodiek; Samenwerken in een team van 10 collega's; Direct contact met de eindklant over de gewenste oplossingen. Hier ga je werken Als Developer kom je te werken in de regio van Lelystad bij een organisatie die met toonaangevende klanten uit heel Nederland samen werkt. De producten en diensten van de organisatie bereiken miljoenen Nederlanders. Hierbij komt een grote hoeveelheid informatie kijken en deze moet discreet en veilig verwerkt worden. De processen die hierbij horen worden door het IT team vormgegeven. De

Bekijk vacature »

Mendix Developer

Voor Troostwijk Groep zoeken wij een: Mendix Developer Wij zoeken Je bent een getalenteerde en ervaren Mendix Developer en het is tijd om je horizon te verbreden. Je wilt minder coderen en meer modelleren, minder bezig zijn met allerlei technische details en randvoorwaarden en meer met functionaliteit. Daarnaast ben je trots op de innovatieve en gebruiksvriendelijke applicaties die je in de loop van de jaren hebt gebouwd. Werk je graag in een enthousiast team, wil je veel vrijheid en kun je tegelijkertijd goed met deadlines omgaan, dan ben jij absoluut degene die wij zoeken! Wat je nodig hebt is ruime

Bekijk vacature »

Senior PHP developer met ambities tot Software Arc

Functie Momenteel zijn ze op zoek naar een ervaren PHP developer die zichzelf graag bezighoudt met zaken als architectuur en de algehele verbetering van structuren en standaarden. Het is eigenlijk meer operationeel als uitvoerend omdat je bezig gaat met zaken als het verder uitrollen en verbeteren van testautomatisering, codereviews, tickets en de doorloop hiervan en architectuurkeuzes. Mocht je hiernaast ook wat DevOps kennis meenemen is dit mooi meegenomen! Vanwege het kleine team maar de wereldwijde impact die zij leveren is er veel focus op kwaliteit. In deze functie werk je aan één van hun belangrijkste applicaties. Hierin werk je nauw

Bekijk vacature »

Full stack developer

Functie Binnen een ontzettend stimulerende werkomgeving kom jij te werken in een software team van 14 developers. Met ontzettend stimulerend bedoel ik een modern pand, wat voorzien is van alle nodige soft- en hardware, zodat jij jouw werk goed kan uitvoeren. Daarnaast zitten ze in een bos, waardoor je in een groene omgeving rustig kunt werken. Het team bestaat uit front end, back end en full stack developers. Jij krijgt dus de keuze hier waar jij jezelf het liefst op zou richten, maar de voorkeur gaat uit naar back end. Er wordt hier Scrum (agile) gewerkt in multidisciplinaire teams met

Bekijk vacature »

C# .NET Developer

Dit ga je doen Ontwikkelen van de Back-end in .NET6 / C# en WebAPI (Focus);) Ontwikkelen van de Front-End in Nodje.js en Angular (secundair); Ontwikkelen in Blazor; Opstellen van een technisch ontwerp; Testen, documenteren en implementeren van de nieuwe applicatie; Verzorgen van de nazorg, na de implementatie. Hier ga je werken Binnen deze organisatie werken duizenden mensen binnen allerlei verschillende disciplines. Tevens hebben zij veel specialiteiten in huis, waaronder ook .Net Developers. Ter uitbreiding van een nieuw team en ter ondersteuning van het project zijn ze opzoek naar een nieuwe collega voor het team. Als C#.NET Developer zal jij je

Bekijk vacature »

Senior Mobile Developer

Sogeti is een organisatie met een goede werksfeer en zo min mogelijk hiërarchische verhoudingen. Ga je bij ons als Senior Mobile Developer aan de slag? Dan werk je dagelijks met collega’s aan de mooiste IT-projecten. Deze snelgroeiende groep collega’s krijgt energie van hun vak en dat merk je op de werkvloer. Onze klantenkring is groot en divers, dat vraagt om flexibiliteit van jou. Tegelijkertijd betekent dit dagelijks nieuwe dingen leren én dat geen werkdag hetzelfde is. Natuurlijk krijg jij de mogelijkheid je te certificeren. We organiseren regelmatig technische Meet-ups en doen we veel aan kennisdeling waarbij iedereen welkom is, zowel

Bekijk vacature »

Front-end Developer

Dit ga je doen Doorontwikkelen van software; Ontwikkelen en testen van nieuwe functionaliteiten; Implementaties van nieuwe functionaliteiten en updates; Verzorgen van technische migraties naar nieuwe frameworks; Verwerken van incidenten. Hier ga je werken Onze klant, gevestigd in de regio Amsterdam, draagt bij aan het verbeteren van de veiligheid en efficiëntie van de Nederlandse infrastructuur door het ontwikkelen van afgemeten software oplossingen. Zo passen zij location intelligence toe om onderhoud en reparaties efficiënt te laten verlopen. Verder zorgen deze systemen dat incidenten zo snel mogelijk worden opgelost. Als Front-end Developer ben jij samen met je team betrokken met het (door)ontwikkelen van

Bekijk vacature »

Junior Software Developer

Functie omschrijving Wij zijn op zoek naar een Junior Software Developer!? Sta jij aan het begin van jouw loopbaan of heb jij misschien al enige ervaring? Vind jij het daarnaast belangrijk om jezelf constant te kunnen ontwikkelen en uitdagen? Lees dan snel verder! Voor een vooraanstaand softwarehuis in Nieuwegein ben ik op zoek naar een Junior Software Developer. De eigenaar van het bedrijf is ervan bewust dat je als junior nog een hoop kan leren, waardoor je de eerste maanden veel begeleiding en diverse trainingen krijgt. Daarna ga je samen met je collega's aan zowel kleine als grote projecten werken.

Bekijk vacature »

.Net Ontwikkelaar

Dit ga je doen Het ontwerpen en ontwikkelen van software voor klanten; Het bijdragen van kennis en ervaring; Het integreren van van de software en afstemmen met klanten; Het functioneel testen van de ontwikkelde software. Hier ga je werken Voor onze relatie zijn wij momenteel op zoek naar een .Net Developer die wilt werken aan software die draait op machines wereldwijd. De organisatie produceert software voor applicaties die gebruikt worden in verschillende branches. De software wordt geleverd aan fabrikanten van verschillende robotica en machines. Als .Net ontwikkelaar ben je intern onderdeel van het team wat de applicatie omgevingen ontwikkeld en

Bekijk vacature »

Medior Java developer

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Front-end Developer

Do you want to work with the latest technologies on the development of new systems and applications? Create elegant interfaces using VueJS for thousands of users? Get moving and strengthen Nederlandse Loterij as a Front-end Developer. Thanks to your efforts, our services are always presented in style. As a Front-end Developer you are responsible for website development and improving customer experience based on data analyze. In this way, you directly contribute to a happy, healthy and sporty Netherlands. As a Front-end Developer you score by: Writing elegant, testable components without side-effects to provide functionality to the users Website development, adding

Bekijk vacature »

Java developer

Functie Je gaat aan de slag als Tester voor een aantal mooie projecten. Je komt terecht in een DevOps team waar jij aan de slag gaat om de kwaliteit te waarborgen omtrent de maatwerk software voor de klanten. Je draait je hand er niet voor om de adviserende rol te bekleden op het gebied van testautomatisering en het opzetten van testframeworks. Zoals aangegeven ga je daadwerkelijk in het eigen team aan de slag en is het daarnaast ook gebruikelijk bij de klanten op locatie te komen om te werken aan de opdrachten. Je krijgt zodoende echt een mooie kijk in

Bekijk vacature »

Junior/medior PHP developer Onderwijssector

Functie Momenteel zijn ze op zoek naar een developer die, veelal fullstack, mee gaat werken aan de ontwikkeling van de producten en zo helpt aan de uitvoering van hun ontwikkelprojecten. Je komt te werken binnen hun development team bestaande uit 6 ontwikkelaars. Ze staan zowel open voor meer junior als medior/senior developers. Je kunt snel veel verantwoordelijkheid krijgen en doorgroeien binnen het bedrijf. Bovendien ben je betrokken bij het bepalen van de product roadmap en de inbreng van (nieuwe) technologieën. De applicaties waaraan je werk worden gebruikt op onderwijsinstellingen door heel Nederland. De tech-stack bestaat voornamelijk uit Laravel (PHP), Vue.js

Bekijk vacature »

Pagina: 1 2 volgende »

Sebas V

Sebas V

16/08/2012 12:06:23
Quote Anchor link
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
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<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
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
$(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
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<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>
 
PHP hulp

PHP hulp

20/04/2024 10:18:12
 
Erwin H

Erwin H

16/08/2012 12:36:52
Quote Anchor link
wat probeer je nu eigenlijk te doen?
Wat gaat er niet goed?
Wat heb je al gedaan om het op te lossen?
Waar loop je vast?

Iets meer heldere info zou wel helpen.
 
Sebas V

Sebas V

16/08/2012 13:22:30
Quote Anchor link
Hee Erwin,

- Ik probeer mijn score uitslag te tonen op de result pagina

- Het formulier neemt de waarde niet mee naar de result pagina omdat er geen POST functie aan gekoppeld zit. Zodra ik dit doe, moet ik mijn button veranderen naar een submit knop, maar dan werkt mijn javascript niet meer die de data mailt en in een database plaatst..

- Ik heb al geprobeerd: Form action naar result.php en method:post > mailing en database plaatsing werkt niet meer;
- Submit knop verbergen achter de normale knop;
- PHP integreren in het javascript bestand, zonder enig succes.

- Dus mijn vraag is, hoe kan ik de score uitslag (POST FUNCTIE) in mijn javascript bestand hierboven meenemen?
Gewijzigd op 16/08/2012 13:25:03 door Sebas V
 
Obelix Idefix

Obelix Idefix

16/08/2012 13:35:11
Quote Anchor link
Je kunt de gegevens toch gewoon POSTen naar result.php en daar een mail (advies: swiftmailer of phpmailer) versturen en gegevens invoeren in db? Zou dat niet met javascript doen.

Ten aanzien van je result code:
Waarom kopiëren van variabelen (regel 7+8)?
Je echo: gebruik ' zodat je in HTML " kunt gebruiken. Daarnaast horen variabelen buiten quotes.
 
Sebas V

Sebas V

16/08/2012 13:55:52
Quote Anchor link
Op dit moment hanteer ik onderstaande contact.php voor de afhandeling van de mail en database. Waarin zie je dan die POST functie staan zodat deze getoond wordt op result.php?


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
<?php
require_once("db.php");                    /* Database Class */
require_once('utils/is_email.php');        /* Email Validation Script */

/* Handle Ajax Request */

if(isset($_POST['newcontact'])){
    $contact = new Contact();
    unset($contact);
}

else{
    header('Location: /');
}


/* Class Contact */
class Contact{
    
    private $db;                         /* the database obj */
    
    private $errors         = array();  /* holds error messages */
    private $num_errors;                   /* number of errors in submitted form */
    
    public function __construct(){
        $this->db = new DB();
        if(isset($_POST['newcontact']))
            $this->processNewMessage();
        else
            header("Location: /");
    }


    public function processNewMessage(){
        
        $contactpersoon        = $_POST['contactpersoon'];        
        $bedrijfsnaam        = $_POST['bedrijfsnaam'];
        $telefoon            = $_POST['telefoon'];
        $email                = $_POST['email'];
        $vraag1_antwoorden    = $_POST['vraag1_antwoorden'];
        $vraag2_antwoorden    = $_POST['vraag2_antwoorden'];
        
            
        /* Server Side Data Validation */
        
        /* Contactpersoon Validation */

        if(!$contactpersoon || mb_strlen($contactpersoon = trim($contactpersoon)) == 0)
            $this->setError('contactpersoon', 'Vul uw contactpersoon in');
        else if(mb_strlen(trim($contactpersoon)) > 120)
            $this->setError('contactpersoon', 'Te lang! 120 karakters max.');
                
        /* Bedrijfsnaam Validation */
            if(!$bedrijfsnaam || mb_strlen($bedrijfsnaam = trim($bedrijfsnaam)) == 0)
            $this->setError('bedrijfsnaam', 'Vul uw bedrijfsnaam in');
        else if(mb_strlen(trim($bedrijfsnaam)) > 120)
            $this->setError('bedrijfsnaam', 'Te lang! 120 karakters max.');
            
            /* Telefoon Validation */
            if(!$telefoon || mb_strlen($telefoon = trim($telefoon)) == 0)
            $this->setError('telefoon', 'Vul uw telefoonnummer in');
        else if(mb_strlen(trim($telefoon)) > 120)
            $this->setError('telefoon', 'Te lang! 120 karakters max.');
            
            /* Vraag 1 Validation */
            if(!$vraag1_antwoorden || mb_strlen($vraag1_antwoorden = trim($vraag1_antwoorden)) == 0)
            $this->setError('vraag1_antwoorden', 'Selecteer een antwoord a.u.b.');
                
            /* Vraag 2 Validation */
            if(!$vraag2_antwoorden || mb_strlen($vraag2_antwoorden = trim($vraag2_antwoorden)) == 0)
            $this->setError('vraag2_antwoorden', 'Selecteer een antwoord a.u.b.');
                
            /* Email Validation */
        if(!$email || mb_strlen($email = trim($email)) == 0)
            $this->setError('email','Vul uw e-mail in');
        else{
            if(!is_email($email))
                $this->setError('email', 'Vul een correct email adres in');
            else if(mb_strlen($email) > 120)
                $this->setError('email', 'Te lang! 120 karakters max.');
        }

    
        /* Errors exist */
        if($this->countErrors() > 0){
            $json = array(
                'result' => -1,
                'errors' => array(
                                array('name' => 'contactpersoon'    ,'value' => $this->error_value('contactpersoon')),
                                array('name' => 'bedrijfsnaam'    ,'value' => $this->error_value('bedrijfsnaam')),
                                array('name' => 'email'        ,'value' => $this->error_value('email')),                                
                                array('name' => 'telefoon'    ,'value' => $this->error_value('telefoon')),
                                array('name' => 'vraag1_antwoorden'    ,'value' => $this->error_value('vraag1_antwoorden')),
                                array('name' => 'vraag2_antwoorden'    ,'value' => $this->error_value('vraag2_antwoorden')),
                            )
                );
                
            $encoded = json_encode($json);
            echo $encoded;
            unset($encoded);
        }

        /* No errors, insert in db*/
        else{
            if(($ret = $this->db->dbNewMessage($contactpersoon, $bedrijfsnaam, $email, $telefoon, $vraag1_antwoorden, $vraag2_antwoorden)) > 0){
                $json = array('result'         => 1);
                if(SEND_EMAIL)
                    $this->sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden);
            }
    
            else
                $json = array('result'         => -2); /* something went wrong in database insertion  */
            $encoded = json_encode($json);
            echo $encoded;
            unset($encoded);
        }
    }

    
    public function sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden){
        /* Just format the email text the way you want ... */
        $message_body    = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
                                    ."Het volgende bedrijf heeft zich zojuist aangemeld:</div><br>"
                                    ."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 1:</td><td style=\"font-size:12px; color:#000000\">".$vraag1_antwoorden."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 2:</td><td style=\"font-size:12px; color:#000000\">".$vraag2_antwoorden."</td></tr></table><br>";
        
            // Geef GELDIGE adressen op
            // Een korte benaming voor jouw website

            $website_naam = 'Aanmelding';
            // Jouw eigen geldige emailadres
            $eigen_emailadres = 'EMAIL ADRES';
            // Een geldig emailadres voor errors
            $error_emailadres = 'EMAIL ADRES';
            // De naam van de verzender
            $naam_verzender = ''.$bedrijfsnaam.'';
            // Het geldige emailadres van de afzender
            $email_verzender = ''.$email.'';
            // Een geldig emailadres of helemaal leeg laten
            $bcc_emailadres = '';
            // HTML mail? True/False
            $html = true;
            
            // De headers samenstellen
            $headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
            $headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . PHP_EOL;
            $headers    .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
            $headers    .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . PHP_EOL : '';
            $headers    .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
            $headers    .= 'X-Priority: Normal' . PHP_EOL;
            $headers    .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
            $headers    .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';

        
            mail(EMAIL_TO,MESSAGE_SUBJECT,$message_body,$headers);

    }

    
    public function setError($field, $errmsg){
        $this->errors[$field]     = $errmsg;
        $this->num_errors         = count($this->errors);
    }

    
    public function error_value($field){
        if(array_key_exists($field,$this->errors))
            return $this->errors[$field];
        else
            return '';
    }

    
    public function countErrors(){
        return $this->num_errors;
    }
};


?>
 
Erwin H

Erwin H

16/08/2012 14:35:02
Quote Anchor link
Ik ga mee met wat Obelix zegt. Waarom zou je eerst alle info via een Ajax submit willen doen en dan ook nog een submit via een normale POST. Dat is dubbelop. Je moet dan twee keer verbinding maken met je server, terwijl het in 1 keer kan. Ik zie dus twee (logische) oplossingen:
1) form op normale manier submitten en serverside zowel het form behandelen als het resultaat opmaken
2) form submitten via Ajax en na een succes melding van de server via javascript je form hidden en een succes div tonen. Op die manier hoef je dus ook geen tweede submit te doen.
 
Obelix Idefix

Obelix Idefix

16/08/2012 16:35:55
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
<?php
        $contactpersoon
        = $_POST['contactpersoon'];        
        $bedrijfsnaam        = $_POST['bedrijfsnaam'];
        $telefoon            = $_POST['telefoon'];
        $email                = $_POST['email'];
        $vraag1_antwoorden    = $_POST['vraag1_antwoorden'];
        $vraag2_antwoorden    = $_POST['vraag2_antwoorden'];
?>

Waarom allemaal kopiëren?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
$message_body    = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
                                    ."Het volgende bedrijf heeft zich zojuist aangemeld:</div><br>"
                                    ."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 1:</td><td style=\"font-size:12px; color:#000000\">".$vraag1_antwoorden."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 2:</td><td style=\"font-size:12px; color:#000000\">".$vraag2_antwoorden."</td></tr></table><br>";
 

Obelix en Idefix op 16/08/2012 13:35:11:
Je echo: gebruik ' zodat je in HTML " kunt gebruiken. Daarnaast horen variabelen buiten quotes.

Dat geldt ook voor het toekennen van een waarde aan een variabele.
Overigens; inline css is eigenlijk niet meer van deze tijd.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$email_verzender
= ''.$email.'';
?>

Waarom die quotes voor en na de variabele?
Je kunt toch gewoon
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
$email_verzender
= $email;
?>
doen?
Overigens: ook nu is het weer kopiëren van variabele en dus overbodig.
Gewijzigd op 16/08/2012 16:36:44 door Obelix Idefix
 
Kris Peeters

Kris Peeters

16/08/2012 16:45:19
Quote Anchor link
Obelix en Idefix op 16/08/2012 16:35:55:
... Overigens; inline css is eigenlijk niet meer van deze tijd. ...


Het lijkt me trouwens een contradictie te zijn. Die tweede s staat voor "sheet".
 
Sebas V

Sebas V

17/08/2012 10:33:02
Quote Anchor link
Erwin H op 16/08/2012 14:35:02:
Ik ga mee met wat Obelix zegt. Waarom zou je eerst alle info via een Ajax submit willen doen en dan ook nog een submit via een normale POST. Dat is dubbelop. Je moet dan twee keer verbinding maken met je server, terwijl het in 1 keer kan. Ik zie dus twee (logische) oplossingen:
1) form op normale manier submitten en serverside zowel het form behandelen als het resultaat opmaken
2) form submitten via Ajax en na een succes melding van de server via javascript je form hidden en een succes div tonen. Op die manier hoef je dus ook geen tweede submit te doen.


Hee Erik, ik zou het graag via manier 2 willen oplossen. Dus het form submitten zoals het nu gaat, anders ben ik bang dat ik teveel overhoop moet halen. De succes div en het verbergen van de form werkt. Echter ik zou graag in de succes div de ingevulde waarden uit het formulier en de score uitslag van de twee radio buttons willen zien.
Hoe doe ik dit?
 
Erwin H

Erwin H

17/08/2012 10:41:41
Quote Anchor link
Het is Erwin, maar dat terzijde ;-)

Het uitlezen van een input element kan je met JQuery eenvoudig doen:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
var tekst = $('input[name=vraag1_antwoorden]').val();

Vervolgens kan je deze inserten in je div via bijvoorbeeld een span die als placeholder erin zit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
//html
<div id="succes_div">U koos voor antwoord: <span><span></div

//jquery
$('div#succes_div span').html(tekst);
 
Sebas V

Sebas V

17/08/2012 10:53:56
Quote Anchor link
Mijn excuus Erwin :-)

Iedergeval, bedoel je zo?

RESULT.PHP
HEAD GEDEELTE
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<script>
var tekst = $('input[name=vraag1_antwoorden]').val();
</script>



RESULT.PHP
HET FORMULIER MET DE INGEVOERDE WAARDEN
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<form id="ContactForm" action="">
<tr>
<td><div id="succes_div">U koos voor antwoord:<span><span></div><script>$('div#succes_div span').html(tekst);</script></td>
</tr>

</form>
 
Erwin H

Erwin H

17/08/2012 11:04:20
Quote Anchor link
De javascript moet in het resultaat van je ajax call. Alleen als de data naar de server is gestuurd, het succesvol is gegaan en je de succesdiv wil tonen haal je de gegevens uit het form en plaats je het in de div.
 
Sebas V

Sebas V

17/08/2012 11:08:05
Quote Anchor link
Oke, dus het script komt zo te staan:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
$(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"
                                var tekst = $('input[name=vraag1_antwoorden]').val();
                              }
                              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_quiz">'+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){}
        });
    }  
};


Vervolgens de HTML, moet ik daar nog iets met een INPUT TYPE toevoegen?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<form id="ContactForm" action="">
<tr>
<td><div id="succes_div">U koos voor antwoord:<span><span></div><script>$('div#succes_div span').html(tekst);</script></td>
</tr>

</form>
 
Erwin H

Erwin H

17/08/2012 11:14:46
Quote Anchor link
Geen javascript in je HTML. Niet nodig en gaat waarschijnlijk nog verkeerd ook.

Als ik het goed begrijp is dit het deel van je script na een succesvolle server call:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
if(data.result == '1'){
   //show success message
   $('#midden').remove();
   window.location = "result.php"
   var tekst = $('input[name=vraag1_antwoorden]').val();
}

De eerste regel snap ik. De tweede al niet meer.... Daar redirect je de gebruiker namelijk mee naar een andere locatie. Dan heeft dat hele succes div gebeuren niet zoveel zin meer.
De derde regel klopt dan wel weer, alleen daarna zou de andere regel moeten komen, waarin je tekst in de span propt. Vervolgens nog de div tonen en het zou moeten kunnen lukken.
 
Sebas V

Sebas V

17/08/2012 11:25:02
Quote Anchor link
Oke, zo ziet mijn AJAX er nu uit:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
if(data.result == '1'){
//show success message
$('#midden').remove();
$('#succes_div span').html(tekst);                

}


Moet ondestaande regel dan in CONTACT.PHP ?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
var tekst = $('input[name=vraag1_antwoorden]').val();


CONTACT.PHP
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
<?php
require_once("db.php");                    /* Database Class */
require_once('utils/is_email.php');        /* Email Validation Script */

/* Handle Ajax Request */

if(isset($_POST['newcontact'])){
    $contact = new Contact();
    unset($contact);
}

else{
    header('Location: /');
}


/* Class Contact */
class Contact{
    
    private $db;                         /* the database obj */
    
    private $errors         = array();  /* holds error messages */
    private $num_errors;                   /* number of errors in submitted form */
    
    public function __construct(){
        $this->db = new DB();
        if(isset($_POST['newcontact']))
            $this->processNewMessage();
        else
            header("Location: /");
    }


    public function processNewMessage(){
        
        $contactpersoon        = $_POST['contactpersoon'];        
        $bedrijfsnaam        = $_POST['bedrijfsnaam'];
        $telefoon            = $_POST['telefoon'];
        $email                = $_POST['email'];
        $vraag1_antwoorden    = $_POST['vraag1_antwoorden'];
        $vraag2_antwoorden    = $_POST['vraag2_antwoorden'];
        
            
        /* Server Side Data Validation */
        
        /* Contactpersoon Validation */

        if(!$contactpersoon || mb_strlen($contactpersoon = trim($contactpersoon)) == 0)
            $this->setError('contactpersoon', 'Vul uw contactpersoon in');
        else if(mb_strlen(trim($contactpersoon)) > 120)
            $this->setError('contactpersoon', 'Te lang! 120 karakters max.');
                
        /* Bedrijfsnaam Validation */
            if(!$bedrijfsnaam || mb_strlen($bedrijfsnaam = trim($bedrijfsnaam)) == 0)
            $this->setError('bedrijfsnaam', 'Vul uw bedrijfsnaam in');
        else if(mb_strlen(trim($bedrijfsnaam)) > 120)
            $this->setError('bedrijfsnaam', 'Te lang! 120 karakters max.');
            
            /* Telefoon Validation */
            if(!$telefoon || mb_strlen($telefoon = trim($telefoon)) == 0)
            $this->setError('telefoon', 'Vul uw telefoonnummer in');
        else if(mb_strlen(trim($telefoon)) > 120)
            $this->setError('telefoon', 'Te lang! 120 karakters max.');
            
            /* Vraag 1 Validation */
            if(!$vraag1_antwoorden || mb_strlen($vraag1_antwoorden = trim($vraag1_antwoorden)) == 0)
            $this->setError('vraag1_antwoorden', 'Selecteer een antwoord a.u.b.');
                
            /* Vraag 2 Validation */
            if(!$vraag2_antwoorden || mb_strlen($vraag2_antwoorden = trim($vraag2_antwoorden)) == 0)
            $this->setError('vraag2_antwoorden', 'Selecteer een antwoord a.u.b.');
                
            /* Email Validation */
        if(!$email || mb_strlen($email = trim($email)) == 0)
            $this->setError('email','Vul uw e-mail in');
        else{
            if(!is_email($email))
                $this->setError('email', 'Vul een correct email adres in');
            else if(mb_strlen($email) > 120)
                $this->setError('email', 'Te lang! 120 karakters max.');
        }

    
        /* Errors exist */
        if($this->countErrors() > 0){
            $json = array(
                'result' => -1,
                'errors' => array(
                                array('name' => 'contactpersoon'    ,'value' => $this->error_value('contactpersoon')),
                                array('name' => 'bedrijfsnaam'    ,'value' => $this->error_value('bedrijfsnaam')),
                                array('name' => 'email'        ,'value' => $this->error_value('email')),                                
                                array('name' => 'telefoon'    ,'value' => $this->error_value('telefoon')),
                                array('name' => 'vraag1_antwoorden'    ,'value' => $this->error_value('vraag1_antwoorden')),
                                array('name' => 'vraag2_antwoorden'    ,'value' => $this->error_value('vraag2_antwoorden')),
                            )
                );
                
            $encoded = json_encode($json);
            echo $encoded;
            unset($encoded);
        }

        /* No errors, insert in db*/
        else{
            if(($ret = $this->db->dbNewMessage($contactpersoon, $bedrijfsnaam, $email, $telefoon, $vraag1_antwoorden, $vraag2_antwoorden)) > 0){
                $json = array('result'         => 1);
                if(SEND_EMAIL)
                    $this->sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden);
            }
    
            else
                $json = array('result'         => -2); /* something went wrong in database insertion  */
            $encoded = json_encode($json);
            echo $encoded;
            unset($encoded);
        }
    }

    
    public function sendEmail($contactpersoon,$bedrijfsnaam,$email,$telefoon,$vraag1_antwoorden,$vraag2_antwoorden){
        /* Just format the email text the way you want ... */
        $message_body    = "<div style=\"font-size:12px; font-weight:normal;\">Hallo,<br><br>"
                                    ."Het volgende bedrijf heeft zich zojuist aangemeld:</div><br>"
                                    ."<table cellpadding=\"1\" cellspacing=\"1\" width=\"550px\"><tr><td style=\"font-size:12px; color:#000000\">Bedrijfsnaam:</td><td style=\"font-size:12px; color:#000000\">".$bedrijfsnaam."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Contactpersoon:</td><td style=\"font-size:12px; color:#000000\">".$contactpersoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Telefoonnummer:</td><td style=\"font-size:12px; color:#000000\">".$telefoon."</td></tr><tr><td style=\"font-size:12px; color:#000000\">E-mail:</td><td style=\"font-size:12px; color:#000000\">".$email."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 1:</td><td style=\"font-size:12px; color:#000000\">".$vraag1_antwoorden."</td></tr><tr><td style=\"font-size:12px; color:#000000\">Antwoord vraag 2:</td><td style=\"font-size:12px; color:#000000\">".$vraag2_antwoorden."</td></tr></table><br>";
        
            // Geef GELDIGE adressen op
            // Een korte benaming voor jouw website

            $website_naam = 'Aanmelding';
            // Jouw eigen geldige emailadres
            $eigen_emailadres = 'EMAIL ADRES';
            // Een geldig emailadres voor errors
            $error_emailadres = 'EMAIL ADRES';
            // De naam van de verzender
            $naam_verzender = ''.$bedrijfsnaam.'';
            // Het geldige emailadres van de afzender
            $email_verzender = ''.$email.'';
            // Een geldig emailadres of helemaal leeg laten
            $bcc_emailadres = '';
            // HTML mail? True/False
            $html = true;
            
            // De headers samenstellen
            $headers     = 'From: ' . $website_naam . ' <' . $eigen_emailadres . '>' . PHP_EOL;
            $headers    .= 'Reply-To: ' . $naam_verzender . ' <' . $email_verzender . '>' . PHP_EOL;
            $headers    .= 'Return-Path: Mail-Error <' . $error_emailadres . '>' . PHP_EOL;
            $headers    .= ($bcc_emailadres != '') ? 'Bcc: ' . $bcc_emailadres . PHP_EOL : '';
            $headers    .= 'X-Mailer: PHP/' . phpversion() . PHP_EOL;
            $headers    .= 'X-Priority: Normal' . PHP_EOL;
            $headers    .= ($html) ? 'MIME-Version: 1.0' . PHP_EOL : '';
            $headers    .= ($html) ? 'Content-type: text/html; charset=iso-8859-1' . PHP_EOL : '';

        
            mail(EMAIL_TO,MESSAGE_SUBJECT,$message_body,$headers);

    }

    
    public function setError($field, $errmsg){
        $this->errors[$field]     = $errmsg;
        $this->num_errors         = count($this->errors);
    }

    
    public function error_value($field){
        if(array_key_exists($field,$this->errors))
            return $this->errors[$field];
        else
            return '';
    }

    
    public function countErrors(){
        return $this->num_errors;
    }
};


?>
 
Erwin H

Erwin H

17/08/2012 11:37:46
Quote Anchor link
Ja, die regel moet natuurlijk nog in dat stuk, anders heeft tekst geen waarde:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
if(data.result == '1'){
   //show success message
   $('#midden').remove();
   var tekst = $('input[name=vraag1_antwoorden]').val();
   $('#succes_div span').html(tekst);

   //ook nog nodig om het echt te tonen?
   $('#succes_div').show()
}

//of korter, maar niet per se duidelijker:
if(data.result == '1'){
   //show success message
   $('#midden').remove();
   $('#succes_div span').html($('input[name=vraag1_antwoorden]').val());
   $('#succes_div').show()
}
 
Sebas V

Sebas V

17/08/2012 12:24:45
Quote Anchor link
Hee Erwin,

de eerste stap is overwonnen, ik zie data verschijnen.
Alleen het probleem is dat hij de hele tijd antwoord: A laat zien ipv andere antwoord mogelijkheden.

Dit is de eerste vraag:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<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_quiz" style="display:none;"></span>


AJAX code huidige situatie:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
if(data.result == '1'){
//show success message
                                   $('#midden').remove();
var tekst = $('input[name=vraag1_antwoorden]').val();
$('#succes_div span').html(tekst);
                                
//ook nog nodig om het echt te tonen?
                                   $('#succes_div').show()
}
Gewijzigd op 17/08/2012 12:26:17 door Sebas V
 
Chris PHP

Chris PHP

17/08/2012 12:48:22
Quote Anchor link
Is het niet makkelijker dat je vraag en antwoord in een database zet? En dan met een while loop de antwoorden ophaald die aan de vraag_id gekoppeld zijn?

Zo kun je ook makkelijker de resulaten opslaan en opvragen van de deelnemers.
Gewijzigd op 17/08/2012 12:50:25 door Chris PHP
 
Sebas V

Sebas V

17/08/2012 13:22:13
Quote Anchor link
Hee Chris,

Ik ben daar niet zo bekend mee en ik zou het graag in deze situatie willen oplossen. Zie jij een oplossing op bovenstaande post waarin alleen antwoord: A uitgelezen wordt?
 
Erwin H

Erwin H

17/08/2012 13:32:50
Quote Anchor link
Ik denk dat ik iets was vergeten toe te voegen :-)

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
$('input[name=vraag1_antwoorden]:checked').val()

Zo haal je de checked radio op binnen de groep met radio buttons die dezelfde naam hebben.
...als ik het goed heb, want met deze dingen loop ik altijd te klooien :-)
Probeer het eens.
Gewijzigd op 17/08/2012 13:33:11 door Erwin H
 
Sebas V

Sebas V

17/08/2012 14:07:27
Quote Anchor link
Haha, we lopen allemaal te klooien hiero :P

Anyway, dit werkt ja, top! Alleen mijn vraag is nu of je daar kan aangeven wat je score is zeg maar op basis van een berekening.

Dus bijvoorbeeld:

U koos voor vraag 1 antwoord: C
U koos voor vraag 2 antwoord: B

(Hier komt dan de score berekening)
Alle antwoorden fout = U heeft score ROOD
1 antwoord goed = U heeft score GEEL
2 antwoorden goed = U heeft score GROEN

Waar zou dat vermeld moeten worden?

Antwoorden HTML
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
<div id="succes_A_div">U koos voor antwoord: <span><span></div><br />
<div id="succes_B_div">U koos voor antwoord: <span><span></div>


JAVASCRIPT
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
if(data.result == '1'){
//show success message
                                   $('#midden').remove();
var tekst = $('input[name=vraag1_antwoorden]:checked').val();
$('#succes_A_div span').html(tekst);
                                  
var tekst = $('input[name=vraag2_antwoorden]:checked').val();
$('#succes_B_div span').html(tekst);
                                
//ook nog nodig om het echt te tonen?
                                   $('#succes_A_div').show()                            $('#succes_B_div').show()
                                  
}
Gewijzigd op 17/08/2012 14:09:20 door Sebas V
 

Pagina: 1 2 volgende »



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.