PHP表单重新填充失败

时间:2016-05-02 08:30:13

标签: php forms if-statement populate

我通过PHP Post命令重新填充表格 一切正常,数据发送和接收完美,但每当我检查$_POST[Ticket] == 2是否计为true时,即使echo $_POST[Ticket]回显1或任何除了2 ...

继承我的代码:

echo '<select title="Ticket" name="Ticket" required>';
echo '<option disabled selected value>Art des Tickets</option>';
echo '<option value="1"';
if ($_POST['Ticket'] == "1") echo 'selected="selected"';
echo '>Gamer</option><option value="2"';
if ($_POST['Ticket'] == "2") echo 'selected="selected"';
echo '>Zuschauer</option></select>';

if ($_POST[Ticket] == 2)
{
    echo '<div class="FormError">Als Zuschauer kannst du leider nur beim Auf- oder Abbau helfen, nicht jedoch bei beidem, bitte ändere deine Auswahl.</div>';
}

我刚刚意识到这部分不起作用,但上面的部分在添加下面提到的改进之后开始工作了......

if (isset($_POST["submit"]) && $_POST["Ticket"] == 2)
        {
            echo '<div class="FormError">Als Zuschauer kannst du leider nur beim Auf- oder Abbau helfen, nicht jedoch bei beidem, bitte ändere deine Auswahl.</div>';
        }

        if ($AHelfer < $Veranstaltung->AHelfer or $BHelfer < $Veranstaltung->BHelfer)
        {
            echo '<select ';
            if (isset($_POST["submit"]) && $_POST["Ticket"] == 2) echo 'class="FormError"';
            echo ' title="Hilfe" name="Hilfe" required>';
            echo '<option disabled selected value>Ich helfe...</option>';
            if ($AHelfer < $Veranstaltung->AHelfer)
            {
                echo '<option value="1"';
                if (!empty($_POST["submit"]) && $_POST["Ticket"] == 1) {echo 'selected="selected"'; }
                echo '>...beim Aufbau (5€ Rabatt)</option>';
            }
            if ($BHelfer < $Veranstaltung->BHelfer)
            {
                echo '<option value="2"';
                if (!empty($_POST["submit"]) && $_POST["Ticket"] == 2) {echo 'selected="selected"'; }
                echo '>...beim Abbau (5€ Rabatt)</option>';
            }
            if ($AHelfer < $Veranstaltung->AHelfer && $BHelfer < $Veranstaltung->BHelfer)
            {
                echo '<option value="3"';
                if (!empty($_POST["submit"]) && $_POST["Ticket"] == 3) {echo 'selected="selected"'; }
                echo '>...beim Auf- und Abbau (10€ Rabatt)</option>';
            }
            echo '<option value="4"';
            if (!empty($_POST["submit"]) && $_POST["Ticket"] == 4) {echo 'selected="selected"'; }
            echo '>...Nicht (Kein Rabatt)</option>';
            echo '</select>';
        }
        echo $_POST[Hilfe];

1 个答案:

答案 0 :(得分:1)

试试这个,我将你的代码重写为可读性很高。这个对我有用。您需要在 4199220 on CodeBlocks 4199728 on DevC++ 134521824 on OnlineIDE 134513824 on gcc 4.9.2 条件下添加单引号或双引号:

Ticket