Я пытаюсь выяснить, почему, когда я отправляю этот фильтр формы, мои инструкции if if else не работают. print_r ($ пост); возвращает правильное значение фильтра, однако $ printmain показывает только «rehab» независимо от того, какой вариант фильтра выбран - что странно, потому что переменная $ post явно меняется. Так что я не могу понять, почему это не происходит через if if else?Если/else если инструкции не работают с фильтром формы PHP
if(isset($_POST['filter'])) {
$post = $_POST['filter'];
print_r($post);
if ($post = 'teamrehab') {$printmain = 'rehab';}
else if ($post = 'heights') {$printmain = 'heights';}
else if ($post = '1225') {$printmain = '1225';}
}
<html>
<form method="post" id="filter" action="<?= $_SERVER['PHP_SELF'];?>">
<select name="filter" onchange="document.getElementById('filter').submit();">
<option value="choose">Choose Client</option>
<option value="teamrehab">teamrehab</option>
<option value="heights">heights</option>
<option value="1225">1225 Old Town</option>
</select>
</form>
<?php if(!empty($_SESSION['username'])){ echo $printmain;}
else echo "Please login with your Twitter account.";?>
</html>
ваш оператор сравнения '= 'присваивает значение, не сравнивающее' == ' – hammus