打印测试基于表单信息在php


Print tekst based on form information in php

我是一个很新的编码,完全的新手,我正试图打印出一个基于分数的文本。比如如果他们选择1,那么打印"Bad",等等。我想我可以使用if/else,但我对编码很陌生,我不知道。我一直在谷歌,但我只是不知道谁得到的形式和文本一起工作。有人能帮忙吗?

    <section class="evaluation">
    <h2>Test</h2>
    <p>More info here</p>
    <p>Gve this a grade [1-6]</p>
    <form action="evaluation.php" method="post">
      <select class="evalSelect">
        <option>1</option>
        <option>2</option>
        <option>3</option>
        <option>4</option>
        <option>5</option>
        <option>6</option>
      </select>
      <input class="evalButton" type="submit" name="name" value="Give grade">
    </form>
  </section>

如果我可以使用这样的东西,我怎么能让它与上面的形式一起工作?

     switch ($grade) {
        case "1":
        echo "Bad";
     break;
        case "2":
        echo "Not so bad";
    break;
        case "3":
        echo "Better";
    break;
        case "4":
        echo "Even better";
    break;
        case "5":
    echo "Good";
    break;
        case "6":
    echo "Very good";
    break;
}

?>

为了做到这一点,您需要为每个带有值的选项标记添加value属性。然后在PHP中,你可以检查是否设置了evalSelect以及它包含了什么。

编辑你的表单到:

   <section class="evaluation">
    <h2>Test</h2>
    <p>More info here</p>
    <p>Gve this a grade [1-6]</p>
    <form action="evaluation.php" method="post">
      <select class="evalSelect">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
      </select>
      <input class="evalButton" type="submit" name="name" value="Give grade">
    </form>
  </section>

对于PHP,这应该可以工作:

// evaluation.php
if (isset($_POST['evalSelect']))
{
    $grade = $_POST['evalSelect'];
    switch ($grade) {
        case "1":
            echo "Bad";
            break;
        case "2":
            echo "Not so bad";
            break;
        case "3":
            echo "Better";
            break;
        case "4":
            echo "Even better";
            break;
        case "5":
            echo "Good";
            break;
        case "6":
            echo "Very good";
            break;
    }
}

尝试这样做来回应您的文本:

<section class="evaluation">
<h2>Test</h2>
<p>More info here</p>
<p>Gve this a grade [1-6]</p>
<form action="evaluation.php" method="post">
  <select class="evalSelect" name="evalSelect">
    <option>1</option>
    <option>2</option>
    <option>3</option>
    <option>4</option>
    <option>5</option>
    <option>6</option>
  </select>
  <input class="evalButton" type="submit" name="name" value="Give grade">
</form>
</section>

evaluation.php中这样做:

$grade = $_POST['evalSelect'];
switch ($grade) {
   case "1":
   echo "Bad";
break;
   case "2":
   echo "Not so bad";
break;
   case "3":
   echo "Better";
break;
   case "4":
   echo "Even better";
break;
   case "5":
echo "Good";
break;
   case "6":
   echo "Very good";
break;
}