我有3個按鈕,被設計成能夠在不同公司之間進行切換。
我已經把這些按鈕的形式:
echo '<form action="?" method="post">';
foreach ($_SESSION['bedrijf'] as $value) {
echo '<button type="submit" class="btn btn-default" name="bedrijf_keuze[]" value="bedrijf_keuze_'.$value.'"><img src="images/logo_'.$value.'_small.png" height="40"></button> ';
}
echo'</form>';
直通POST我用這作爲一個會話變量進入系統的其餘部分:
if($_SERVER['REQUEST_METHOD'] == 'POST')
{
foreach($_POST["bedrijf_keuze"] as $key=>$value)
{
$bedrijf_keuze = trim(mysqli_real_escape_string($mysqli, $value));
$_SESSION['bedrijf_keuze'] = $bedrijf_keuze;
}
}
現在當一個按鈕被點擊時,表單被髮送,當我回顯我看到正確的值$_SESSION['bedrijf_keuze']
爲了能夠看到被選擇哪個公司我已經取代class="btn btn-default"
與if($_SESSION['bedrijf_keuze'] == "bedrijf_keuze_'.$value.'") { echo 'class="btn btn-default active"'; } else { echo 'class="btn btn-default"'; }
問題
被點擊,並且其中所述會話值被設定爲不顯示爲活動的按鈕。 形式的最終代碼現在:
echo '<form action="?" method="post">';
foreach ($_SESSION['bedrijf'] as $value)
{
echo '<button type="submit" ';
if($_SESSION['bedrijf_keuze'] == "bedrijf_keuze_'.$value.'") {
echo 'class="btn btn-default active"'; }
else {
echo 'class="btn btn-default"';
}
echo ' name="bedrijf_keuze[]" value="bedrijf_keuze_'.$value.'"><img src="images/logo_'.$value.'_small.png" height="40"></button> ';
}
echo'</form>';
當我回聲$_SESSION['bedrijf_keuze']
和bedrijf_keuze _ '$價值。'這些值是相對應的。那麼出了什麼問題以及如何解決這個問題?
OK,那WAAS的問題,雖然我仍然不;噸理解爲什麼這可能是問題。 – Muiter
小心[混合](https://stackoverflow.com/questions/3446216/what-is-the-difference-between-single-quoted-and-double-quoted-strings-in-php)雙重和單個qoutes 。該按鈕的發佈值不包含任何單引號,而您的條件是因爲雙引號圍繞它 – DarkBee