【发布时间】:2016-05-02 17:09:19
【问题描述】:
我正在通过 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];
【问题讨论】:
-
在条件中的 Ticket 周围添加
'引号。if ($_POST['Ticket'] == 2... -
没有变化...顺便说一句,我从来不用引号...总是在没有...的情况下工作...
-
你应该。没有那个 PHP 将其解析为常量。如果不存在
Ticket常量,则其值为Ticket。所以它永远是真的。请用您的固定代码更新您的代码。
标签: php forms if-statement populate