Vinnica
@Vinnica
Начинающий верстальщик

Как подменить значения value на мое значения?

Добрый день. Есть глупая и детская проблема

есть select
<select name="country[]" class="select-country">
                            <option value="non_country" selected="selected">Ещё не определился</option>
                            <option value="austria">Австрия</option>
                            <option value="belgia">Бельгия</option>
                            <!--<option value="bolgaria">Болгария</option>-->
                            <option value="vengry">Венгрия</option>
                            <option value="germany">Германия</option>
                            <option value="grecee">Греция</option>
                            <option value="daniya">Дания</option>
                            <option value="ispania">Испания</option>
                            <option value="italy">Италия</option>
                            <!--<option value="kitay">Китай</option>-->
                            <option value="latviya">Латвия</option>
                            <option value="litva">Литва</option>
                            <option value="malta">Мальта</option>
                            <option value="niderlandy">Нидерланды</option>
                            <option value="norvegiya">Норвегия</option>
                            <option value="polsa">Польша</option>
                            <option value="portugal">Португалия</option>
                            <!--<!--<option value="singapur">Сингапур</option>-->-->
                            <option value="slovakiya">Словакия</option>
                            <option value="sloveniya">Словения</option>
                            <!-- <!--<option value="usa">США</option>-->-->
                            <option value="finland">Финляндия</option>
                            <option value="france">Франция</option>
                            <option value="chech">Чехия</option>
                            <option value="shvecariya">Швейцария</option>
                            <option value="sveciya">Швеция</option>
                            <option value="estoniya">Эстония</option>
                        </select>


передает оно значения value , но так как там не совсем корректные слова англ буквами есть желания чтобы оно подменяло их на русские

В мейлере пишу вот такое
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'non_country'){ $selectedProjects = "Не выбрано";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'austria'){ $selectedProjects = "Австрия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'austria'){ $selectedProjects = "Австрия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'belgia'){ $selectedProjects = "Бельгия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'bolgaria'){ $selectedProjects = "Болгария";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'vengry'){ $selectedProjects = "Венгрия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'germany'){ $selectedProjects = "Германия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'grecee'){ $selectedProjects = "Греция";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'daniya'){ $selectedProjects = "Дания";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'ispania'){ $selectedProjects = "Испания";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'italy'){ $selectedProjects = "Италия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'kitay'){ $selectedProjects = "Китай";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'latviya'){ $selectedProjects = "Латвия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'litva'){ $selectedProjects = "Литва";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'malta'){ $selectedProjects = "Мальта";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'niderlandy'){ $selectedProjects = "Нидерланды";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'norvegiya'){ $selectedProjects = "Норвегия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'polsa'){ $selectedProjects = "Польша";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'portugal'){ $selectedProjects = "Португалия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'singapur'){ $selectedProjects = "Сингапур";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'slovakiya'){ $selectedProjects = "Словакия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'sloveniya'){ $selectedProjects = "Словения";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'usa'){ $selectedProjects = "США";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'finland'){ $selectedProjects = "Финляндия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'france'){ $selectedProjects = "Франция";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'chech'){ $selectedProjects = "Чехия";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'shvecariya'){ $selectedProjects = "Швейцария";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'sveciya'){ $selectedProjects = "Швеция";}
if(isset($_POST["country[]"]) && $_POST["country[]"] == 'estoniya'){ $selectedProjects = "Эстония";}


а дальше вывожу вот так
$email_content .= $selectedProjects;

но, как Вы уже поняли, оно не передает никакого значения. Скажите как правильно решить эту проблему
  • Вопрос задан
  • 161 просмотр
Решения вопроса 2
@BorisKorobkov Куратор тега PHP
Web developer
Проблема высосана из пальца. Сразу пишите в value нужные значения.
Ответ написан
sergiks
@sergiks Куратор тега PHP
♬♬
Неправильно решить проблему можно примерно так:

<?php
$dict = array(
	'non_country' => "Не выбрано",
	'austria' => "Австрия",
	'austria' => "Австрия",
	'belgia' => "Бельгия",
	'bolgaria' => "Болгария",
	'vengry' => "Венгрия",
	'germany' => "Германия",
	'grecee' => "Греция",
	'daniya' => "Дания",
	'ispania' => "Испания",
	'italy' => "Италия",
	'kitay' => "Китай",
	'latviya' => "Латвия",
	'litva' => "Литва",
	'malta' => "Мальта",
	'niderlandy' => "Нидерланды",
	'norvegiya' => "Норвегия",
	'polsa' => "Польша",
	'portugal' => "Португалия",
	'singapur' => "Сингапур",
	'slovakiya' => "Словакия",
	'sloveniya' => "Словения",
	'usa' => "США",
	'finland' => "Финляндия",
	'france' => "Франция",
	'chech' => "Чехия",
	'shvecariya' => "Швейцария",
	'sveciya' => "Швеция",
	'estoniya' => "Эстония"
);

function toName($key) {
	return isset( $dict[$key]) ? $dict[$key] : $key;
}

if( isset( $_POST["country"]) {
	$names = array_map('toName', $_POST['country']);
	$email_content .= join(', ', $names);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Sanasol
@Sanasol Куратор тега PHP
нельзя просто так взять и загуглить ошибку
жесть какая.
$countries = ['russia' => 'Россия', 'neverland' => 'Небыляндия'];

foreach($countries as $key => $value){
 echo "<option value=\"{$key}\">{$value}</option>";
}


$selected = [];
foreach($_POST["country"] as $country) {
    $selected[] = $countries[$country];
}

$email_content .= implode(', ', $selected);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы