Существует, по-видимому, путаница в использовании слов специальных символов. В значении PHP-функции htmlspecialchars специальный символ меньше символа (<), символ большего размера (>), амперсанд (&) и, возможно, одиночная или двойная кавычка.
Вы не должны применять htmlspecialchars при сравнении строки с другой обычной строкой.
Итак, почему бы не просто:
$concert = $_GET["concert"];
if ($concert === "fanpass") {
// do one thing
} else if ($concert === "studentdiscount") {
// do another thing
} else {
// any other value
echo htmlspecialchars($concert);
// ...
}
Идя имена переменных, то кажется, что вы хотите использовать концерт параметр для чего-то еще, например, условия скидок.
В этом случае вы можете начать использовать новый параметр URL, как, например, скорости:
$concert = $_GET["concert"];
$rate = "(none)";
if (isset($_GET["discount"]) {
$rate = $_GET["discount"];
};
if ($rate === "fanpass") {
// do one thing
} else if ($rate === "studentdiscount") {
// do another thing
} else {
// any other value
// ...
}
echo "Your concert: {htmlspecialchars($concert)}<br>";
echo "Your rate: {htmlspecialchars($rate)}<br>";
почему не u'r с помощью другого параметра добирается, чтобы сделать это? –
Да, я понимаю, что мне нужно использовать другое ПОЛУЧЕНИЕ, чтобы сделать это, но я не очень уверен в правильном пути, я пробовал разные способы и не работал. –