Webbserverprogrammering 1

Show sourcecode

The following files exists in this folder. Click to view.

webbsrvprg/exercises/cookie-session/

ovn_cook1.php
ovn_cook2.php
ovn_cook3.php
ovn_cook3hem.php
ovn_cook4.php
ovn_cook5.php

ovn_cook5.php

225 lines UTF-8 Windows (CRLF)
<?php
session_start
();

if (!isset(
$_SESSION["rättSvar"])) {
  
$_SESSION["rättSvar"] = 0;
}
if (!isset(
$_SESSION["question"])) {
  
$_SESSION["question"] = 0;
}
if (!isset(
$_SESSION["namn"])) {
  
$_SESSION["namn"] = "";
}
if (!isset(
$_SESSION["epost"])) {
  
$_SESSION["epost"] = "";
}
if (!isset(
$_SESSION["lösenord"])) {
  
$_SESSION["lösenord"] = "";
}
if (!isset(
$_SESSION["felLösenord"])) {
  
$_SESSION["felLösenord"] = "";
}
?>

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>Cookie-Session 5</title>
  <style>
    body{
      margin: 20px;
    }
    .error {
      color:red;
    }
    .green {
      background-color:green;
      color:white;
    }

  </style>
</head>
<body>
  <?php
    
if ($_SERVER["REQUEST_METHOD"] == "POST") {
      if(isset(
$_POST["question"])) {
        
$_SESSION["question"] = (int)$_POST["question"];
      }


      if(isset(
$_POST["namn"]) && $_POST["namn"]!="") {
        
$_SESSION["namn"] = $_POST["namn"];
      }

      if(isset(
$_POST["lösenord"]) && $_POST["lösenord"]!="") {
        
$_SESSION["lösenord"] = $_POST["lösenord"];
        if (
$_SESSION["lösenord"] == "lösenord123") {
          
$_SESSION["question"] = 1;
          
$_SESSION["felLösenord"] = "";
        }
        else {
          
$_SESSION["felLösenord"] = "Fel lösenord";
        }
      }

      if(isset(
$_POST["fråga1"]) && $_POST["fråga1"]!="") {
        
$_SESSION["fråga1"] = $_POST["fråga1"];
        
        if (
$_SESSION["fråga1"] === "svar3") {
          
$_SESSION["rättSvar"]+=1;
        }
        
$_SESSION["question"] = 2;
      }

      if(isset(
$_POST["fråga2"]) && $_POST["fråga2"]!="") {
        
$_SESSION["fråga2"] = $_POST["fråga2"];
        
        if (
$_SESSION["fråga2"] === "svar2") {
          
$_SESSION["rättSvar"]+=1;
        }
        
$_SESSION["question"] = 3;

      }

      if(isset(
$_POST["fråga3"]) && $_POST["fråga3"]!="") {
        
$_SESSION["fråga3"] = $_POST["fråga3"];
        
        if (
$_SESSION["fråga3"] === "svar4") {
          
$_SESSION["rättSvar"]+=1;
        }
        
$_SESSION["question"] = 4;

      }

      if(isset(
$_POST["epost"]) && $_POST["epost"]!="") {
        
$_SESSION["epost"] = $_POST["epost"];
      }

      
$mottagare $_SESSION["epost"];
      
$rubrik "PHP Mailtest";
      
$mejlhuvud "From: ".$_SESSION["epost"]." \nReply-To: kalle@anka.se";
      
$medelande $_SESSION["namn"]. " du fick "$_SESSION["rättSvar"]. " rätt av 3 möjliga.";

      if(isset(
$_POST["epost"])) {
        if(
$_POST["epost"]!="") {
          
mail($mottagare$rubrik$medelande$mejlhuvud);
        }
      }
        
    }

  
?>

  <h1>Quiz</h1>
  <form method="post" action="">


    <?php
      
if ($_SESSION["question"] == 0) {
    
?>
    Skriv in lösenord <br>
    <input type="text" name="lösenord" value="" required>
    <span class="error"> <?php echo $_SESSION["felLösenord"?> </span>
    <br><br>

    <?php
      
}
      elseif (
$_SESSION["question"] == 1) {
    
?>

    Skriv ditt namn <br>
    <input type="text" name="namn" value="<?php echo htmlspecialchars($_SESSION['namn']); ?>" required> 
    <br><br>

    Vilken planet är närmast solen? <br>
    <input type="radio" name="fråga1" value="svar1" required> Mars <br>
    <input type="radio" name="fråga1" value="svar2"> Venus <br>
    <input type="radio" name="fråga1" value="svar3"> Mercurius <br>
    <input type="radio" name="fråga1" value="svar4"> Jorden <br>
    <br><br>
        
    <?php
      
}
      elseif (
$_SESSION["question"] == 2) {
    
?>
    <br><br><br>

    Vad heter Sveriges huvdstad? <br>
    <input type="radio" name="fråga2" value="svar1" required> Göteborg <br>
    <input type="radio" name="fråga2" value="svar2"> Stockholm <br>
    <input type="radio" name="fråga2" value="svar3"> Malmö <br>
    <input type="radio" name="fråga2" value="svar4"> Uppsala <br>

    <br><br>

    <?php
      
}
      elseif (
$_SESSION["question"] == 3) {
    
?>
    <br><br><br>


    Vilket djur är känt för att ha lång hals? <br>
    <input type="radio" name="fråga3" value="svar1" required> Lejon <br>
    <input type="radio" name="fråga3" value="svar2"> Elefant <br>
    <input type="radio" name="fråga3" value="svar3"> Zebra <br>
    <input type="radio" name="fråga3" value="svar4"> Giraff <br>
    <br>
    <?php
      
}
      elseif (
$_SESSION["question"] == 4) {
    
?>

    <h2>Resultat</h2>
    <p><?php echo $_SESSION["namn"]; ?>, du fick <?php echo $_SESSION["rättSvar"]; ?> rätt av 3 möjliga.</p><br>
    Skriv in din epost <br> 
    <input type="text" name="epost" value="<?php echo htmlspecialchars($_SESSION['epost']); ?>" required>
    <br>

    <h2>Rätta svar</h2>
    Vilken planet är närmast solen? <br>

    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga1"] == 'svar1') { echo '<span class="error">';} ?> Mars <?php if ($_SESSION["fråga1"] == 'svar1') { echo '</span>'; }?><br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga1"] == 'svar2') { echo '<span class="error">';} ?> Venus <?php if ($_SESSION["fråga1"] == 'svar2') { echo '</span>'; }?> <br>
    &nbsp;&nbsp; <span class="green"> Mercurius </span> <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga1"] == 'svar4') { echo '<span class="error">';} ?> Jorden <?php if ($_SESSION["fråga1"] == 'svar4') { echo '</span>'; }?> <br>
    <br><br>

    Vad heter Sveriges huvdstad? <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga2"] == 'svar1') { echo '<span class="error">';} ?> Göteborg <?php if ($_SESSION["fråga2"] == 'svar1') { echo '</span>'; }?> <br>
    &nbsp;&nbsp; <span class="green"> Stockholm </span> <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga2"] == 'svar3') { echo '<span class="error">';} ?> Malmö <?php if ($_SESSION["fråga2"] == 'svar3') { echo '</span>'; }?> <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga2"] == 'svar4') { echo '<span class="error">';} ?> Uppsala <?php if ($_SESSION["fråga2"] == 'svar4') { echo '</span>'; }?> <br> <br>

    Vilket djur är känt för att ha lång hals? <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga3"] == 'svar1') { echo '<span class="error">';} ?> Lejon <?php if ($_SESSION["fråga3"] == 'svar1') { echo '</span>'; }?> <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga3"] == 'svar2') { echo '<span class="error">';} ?> Elefant <?php if ($_SESSION["fråga3"] == 'svar2') { echo '</span>'; }?> <br>
    &nbsp;&nbsp; 
    <?php if ($_SESSION["fråga3"] == 'svar3') { echo '<span class="error">';} ?> Zebra <?php if ($_SESSION["fråga3"] == 'svar3') { echo '</span>'; }?> <br>
    &nbsp;&nbsp; <span class="green"> Giraff </span> <br>
    <br>

    <?php
      
}
    
?>

    <?php if ($_SESSION["question"] < 5) { ?>
    <input type="submit" value="Skicka">
    <?php ?>

    <br>
  </form>

</body>
</html>