Avatar billede jonnaegelund Nybegynder
29. april 2013 - 12:05 Der er 3 kommentarer

omskrivning fra ASP til PHP

<%
dim Quiz(10) ' change number to num of questions you want to show
'Regler for opbygning af spørgsmål: Quiz(X) = "Spørgsmålets ordlyd|Det rigtige svar|Svar mulighed 1|Svar mulighed 2|Svar mulighed 3|Svar mulighed 4"
Quiz(0) = "Må man køre over for rødt?|Nej|vælg|Nej|Ja"

Quiz(1) = "I Danmark kører man i venstre side|Nej|vælg|Nej|Ja"

Quiz(2) = "I bymæssig bebyggelse må man køre ..|50 km/t|vælg|60 km/t|70 km/t|50 km/t"

Quiz(3) = "Må man overhale ved fuld optrukket linjer?|Nej|vælg|Ja|Nej"

Quiz(4) = "Skal du holde tilbage ved hajtænder?|Ja|vælg|Nej|Ja"

Quiz(5) = "Er det lov, at man skal have sele på?|Ja|vælg|Nej|Ja"

Quiz(6) = "Sidder rattet i højre side i danske biler?|Nej|vælg|Nej|Ja"

Quiz(7) = "Er baglygterne blå?|Nej|vælg|Nej|Ja"

Quiz(8) = "Sidder sidespejlene på begge sider af bilen?|Ja|vælg|Nej|Ja"

Quiz(9) = "Er der under 10 tal/bogstaver på en alm. dansk nummerplade?|Ja|vælg|Nej|Ja"


public Sub ShowQuiz()

response.write("<form action='quiz.asp' method='post'>")

for i = 0 to ubound(Quiz) - 1
  Bits = split(Quiz(i) , "|")
  response.write("<p>&bull; " & Bits(0) & "<br>")
  response.write("<select name='question" & i + 1 & "' class='tb'>")

for x = 2 to ubound(Bits)
  response.write("<option value='" & Bits(x) & "'>" & Bits(x) & "</option>")
  next

response.write("</select></p>")
next
response.write("<p><input type='submit' name='ProcessQuiz' value='Check answers' class='tb'></p></form>")

End sub

public sub ProcessQuiz()

for i = 0 to ubound(Quiz) - 1
  Bits = split(Quiz(i) , "|")
  if Bits(1) = request.form("Question"&i+1) then
    Result = "<font color='#009900'>Correct</font>"
  else
    Result = "<font color='#ff0000'>Incorrect</font> - The correct answer was " & Bits(1)
  end if

response.write("<p>&bull; " & Bits(0) & "<br>")
response.write("You answered: " & request.form("Question"&i+1) & ". This was " & Result)
response.write("</p>")
next

end sub
%>
Avatar billede michael_stim Ekspert
29. april 2013 - 12:38 #1
Hej og velkommen til. Det er ikke tilladt at oprette mere end ét spørgsmål, indeholdende samme emne, ad gangen. Så luk venligst dette spørgsmål.
Avatar billede Temp_dk Nybegynder
29. april 2013 - 20:58 #2
Her er en fortolkning af dit script

<?php
/*
* Regler for opbygning af spørgsmål:
* $Quiz[X] = 'Spørgsmålets ordlyd","Det rigtige svar","Svar mulighed 1","Svar mulighed 2","Svar mulighed 3","Svar mulighed 4"
*/

$Quiz = array();

$Quiz[0] = array('Må man køre over for rødt?','Nej','Nej','Ja');

$Quiz[1] = array('I Danmark kører man i venstre side','Nej','Nej','Ja');

$Quiz[2] = array('I bymæssig bebyggelse må man køre ..','50 km/t','50 km/t','60 km/t','70 km/t');

$Quiz[3] = array('Må man overhale ved fuld optrukket linjer?','Nej','Nej','Ja');

$Quiz[4] = array('Skal du holde tilbage ved hajtænder?','Ja','Nej','Ja');

$Quiz[5] = array('Er det lov, at man skal have sele på?','Ja','Nej','Ja');

$Quiz[6] = array('Sidder rattet i højre side i danske biler?','Nej','Nej','Ja');

$Quiz[7] = array('Er baglygterne blå?','Nej','Nej','Ja');

$Quiz[8] = array('Sidder sidespejlene på begge sider af bilen?','Ja','Nej','Ja');

$Quiz[9] = array('Er der under 10 tal/bogstaver på en alm. dansk nummerplade?','Ja','Nej','Ja');


function ShowQuiz($Quiz)
{
    ?>
<form action='quiz.php' method='post'>
    <?php

    foreach($Quiz as $key => $value)
    {
        $svaret = count($value);
       
        echo "<p>• " . $value[0] . "<br>";
        echo "<select name='question" . $key . "' class='tb'>";

        for ($i = 2; $i < $svaret; $i ++)
        {
            echo '<option value="'.$value[1].'">'.$value[$i].'</option>';
        }
        echo "</select><br>";

    }
    ?>
    </p>
    <p>
        <input type='submit' value='Check answers' class='tb'>
    </p>
</form>
<?php
}

function ProcessQuiz($res,$Quiz,$i)
{
    foreach($res as $value)
    {
        if (strcmp($value,$Quiz[$i][2]) === 0)
            $Result = "<font color='#009900'>Correct</font>";
        else
            $Result = "<font color='#ff0000'>Incorrect</font> - The correct answer was ". $Quiz[$i][2];

        echo "<p>• " . $Quiz[$i][0] . "<br>";
        echo "You answered: " . $value . ". This was " . $Quiz[$i][2];
        echo "</p>";
        $i++;
    }
}
/*
*
*/
if(isset($_POST['question0']))
    ProcessQuiz($_POST,$Quiz,0);
else
    ShowQuiz($Quiz);
?>
Avatar billede jonnaegelund Nybegynder
29. april 2013 - 21:54 #3
Mange tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester