Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[PHP] vragen formulier

Pagina: 1
Acties:

Onderwerpen


  • meneer william
  • Registratie: Maart 2011
  • Laatst online: 04-11-2024
Beste Tweakers,

nou ben ik bezig een soort van multiple choice formulier aan het maken. maar nou ben ik bezig het wiel opnieuw uit te vinden. op internet is het één en ander te vinden maar dat is allemaal weer anders of op een andere manier. nou vroeg ik me af of je met een handig stukje code automatisch laat controleren hoeveel vragen (radio buttons) er zijn en vervolgens kijkt of het value goed of fout is en vervolgens een cijfer uitrekent.

of moet ik gewoon handmatig alle radio buttons groepen laten controleren en een cijfer optellen ?

kortom hoe moet je zo iets aanpakken. zelf ben ik bezig met een script maar ik weet niet of dat 100% efficiënt is.

:O ik vraag niet om een voorgekauwd script maar om wijze raad :O

op dit moment probeer ik de goede antwoorden een value te geven van 1 en die dan te laten optellen zodat je een soort score krijgt. echter krijg ik dan de foutmelding

' Notice: Undefined index: vraag1 in D:\usb webserver\root\webdisign php\actie lab\phpverwerker.php on line 33

Notice: Undefined index: vraag2 in D:\usb webserver\root\webdisign php\actie lab\phpverwerker.php on line 34
0 '

als iemand mij kon vertellen hoe ik het meegegeven value kan gebruiken in een formule zou ik ook heel blij zijn.

bij voorbaat dank,

en voor als je het wilt weten dis ist mein code:

PHP: phpverwerker.php
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
<?php
if (isset($_POST['voornaam']) && isset($_POST['voornaam']) && $_POST['voornaam'] <> '' && $_POST['achternaam'] <> '')
    {
        $naam = $_POST["voornaam"] . ' ' . $_POST["achternaam"]; 
        $hoofdletter = strtoupper($naam);
        echo "EVALUATIE GEMAAKT DOOR: " . $hoofdletter;
        if ($_POST['manvrouw'] == 'man')
        {
            echo "<br><br> HIJ HEEfD EEN ScORE VAN:";
        }
        else
        {
            echo "<br><br> ZIJ HEEfD EEN ScORE VAN:";
        }
        $a = $_POST['vraag1'];
        $b = $_POST['vraag2'];
        $c = $a + $b;
        echo $c;
        
    }
else
    {
        echo "<center>ERROR GEEN GEGEVENS: E-MAIL WILLIAM.WL@LIVE.NL</center>";
    }
?>


maak je geen zorgen over het formulier die ziet er ongeveer zo uit:

HTML: index.php
54
55
56
57
58
59
60
61
62
63
1. vraag 1 ?
  <br><br>
 <input type="radio" name="vraag1" value="0"/> antwoord a
   <br><br>
  <input type="radio" name="vraag1" value="1"/> antwoord b
   <br><br>
  <input type="radio" name="vraag1" value="0"/> antwoord c
   <br><br>
   <hr>
   <br>


verder is mijn POST ook goed want ik krijg wel een naam mee en een geslacht die ik laat echo'en in een div.

sirwilliam


  • Acid_Burn
  • Registratie: Augustus 2001
  • Laatst online: 24-11 01:11

Acid_Burn

uhuh

Staan die radiobuttons wel binnen je formtags?
Wat geeft een var_dump van je $_POST
What's up met die vreemde hoofd/kleine letters?
Deze constructie maakt het een eitje om een 10 te halen natuurlijk.
Is er wel een optie geselecteerd?

[ Voor 7% gewijzigd door Acid_Burn op 06-12-2011 10:03 ]

Glass Eye Photography | Zelfbouw wireless fightstick | Mijn puzzel site


  • meneer william
  • Registratie: Maart 2011
  • Laatst online: 04-11-2024
Acid_Burn schreef op dinsdag 06 december 2011 @ 10:02:
Staan die radiobuttons wel binnen je formtags?
Wat geeft een var_dump van je $_POST
What's up met die vreemde hoofd/kleine letters?
Deze constructie maakt het een eitje om een 10 te halen natuurlijk.
Is er wel een optie geselecteerd?
ik zal je vragen beantwoorden,
  • ja ze staan binnen de form tags als ik ze bijvoorbeeld mee geef dat ze a zijn en die if a doe dit dan werkt dat.
  • als ik een $_POST wil benaderen met een value van 0 of 1 en wil optellen geeft hij Undefined index
  • tja lang verhaal ik gebruik een los lettertype dat alleen hoofdletters heeft (farcry font) dus daarvoor moest ik de hoofd letter functie toepassen omdat zo de namen wel zichtbaar worden.
  • dat klop ik kijk gewoon hoeveel vragen er zijn en dan reken ik uit hoeveel punten hij mee moet geven per vraag en dat reken ik uit met een formule (verbaast :? zo doen ze dat ook met echte toetsen)
  • ja ik heb een optie geselecteerd weet echt niet waarom hij die foutmelding geeft

sirwilliam


  • MueR
  • Registratie: Januari 2004
  • Laatst online: 19:50

MueR

Admin Devschuur® & Discord

is niet lief

Ga nou eens een keer fatsoenlijk debuggen. Doe een var_dump van je $_POST en kijk wat er werkelijk in zit. Leer foutmeldingen lezen, zeker voor een undefined index staan maar een paar miljard hits op Google. Het is niet erg om het niet te kunnen, maar eigen inzet mis ik enorm.

Oh ja, PHP hoort in Programming

Anyone who gets in between me and my morning coffee should be insecure.


  • OkkE
  • Registratie: Oktober 2000
  • Laatst online: 10-11 15:46

OkkE

CSS influencer :+

meneer william schreef op dinsdag 06 december 2011 @ 10:11:
[...]


ik zal je vragen beantwoorden,
  • ja ze staan binnen de form tags als ik ze bijvoorbeeld mee geef dat ze a zijn en die if a doe dit dan werkt dat.
  • als ik een $_POST wil benaderen met een value van 0 of 1 en wil optellen geeft hij Undefined index
  • tja lang verhaal ik gebruik een los lettertype dat alleen hoofdletters heeft (farcry font) dus daarvoor moest ik de hoofd letter functie toepassen omdat zo de namen wel zichtbaar worden.
  • dat klop ik kijk gewoon hoeveel vragen er zijn en dan reken ik uit hoeveel punten hij mee moet geven per vraag en dat reken ik uit met een formule (verbaast :? zo doen ze dat ook met echte toetsen)
  • ja ik heb een optie geselecteerd weet echt niet waarom hij die foutmelding geeft
2. Doe eens <?php var_dump($_POST); ?> om de debuggen. :)

3. Ik vind het netter om dan de hoofdletters via CSS te doen.

4. Door het formulier aan te passen als bezoeker en de value van een input op 10 te zetten ipv 1, heb je direct een 10 met één vraag goed. :)

5. Undefined Index betekend dat je $_POST['waarde_die_niet_bestaat'] probeert op te halen. :)

“The best way to get the right answer on the Internet is not to ask a question, it's to post the wrong answer.”
QA Engineer walks into a bar. Orders a beer. Orders 0 beers. Orders 999999999 beers. Orders a lizard. Orders -1 beers.


  • meneer william
  • Registratie: Maart 2011
  • Laatst online: 04-11-2024
OkkE schreef op dinsdag 06 december 2011 @ 10:43:
[...]

2. Doe eens <?php var_dump($_POST); ?> om de debuggen. :)

3. Ik vind het netter om dan de hoofdletters via CSS te doen.

4. Door het formulier aan te passen als bezoeker en de value van een input op 10 te zetten ipv 1, heb je direct een 10 met één vraag goed. :)

5. Undefined Index betekend dat je $_POST['waarde_die_niet_bestaat'] probeert op te halen. :)
bedankt voor de uitleg. ik zal er mee aan de slag.

sirwilliam


  • wackmaniac
  • Registratie: Februari 2004
  • Laatst online: 20-11 09:10
Totaal off topic: Leer ook even vervoegen; heefd? Probeer heeft eens...

Read the code, write the code, be the code!


  • YopY
  • Registratie: September 2003
  • Laatst online: 06-11 13:47
En je e-mailadres staat in de code die je gedumpt hebt, weet niet of dat de bedoeling was ;).

Verwijderd

Moet ik nou echt serieus reageren op een post met dingen zoals "ZIJ HEEfD EEN ScORE VAN:" ?
Pagina: 1