Возможная ошибка в передаче значения с формы

BigBoss

Новичок
День добрый. Есть такой код:

<form method="post">
<input type="text" name="names">
<input type="submit">
</form>

<?php
$name = $_POST["names"];

$names = Array ("Вася", "Игорь","Миша", "Тити");

foreach($names as $tmp) {
if (mb_substr($tmp, 0,1) ==$name) echo $tmp;
}
?>
Как он должен работать: Пользователь вводит в форме букву, например "В" и ему выводиться имя начинающиеся с буквы "В". Проблема: не выводиться вообще нечего. Однако в онлайн phptester всё работает(но там значение $name предопределено)
 

DIG

Новичок
Партнер клуба
Форма и обработчик в одном файле? Просто print_r($_POST) в обработчике что выдаёт?
 

BigBoss

Новичок
Переписал вот так;

$name = $_POST["names"];

$names = Array ("Vlad", "David");

foreach($names as $tmp) {
if (mb_substr($tmp, 0,1) ==$name) echo $tmp;
}
?>

Теперь выводит только первый элемент; если ввожу букву "V" то выводит Vlad. Если букву "D" то ничего, а должен "David"
 

DIG

Новичок
Партнер клуба
Возможно нужно копать в сторону кодировок. Какая кодировка на сервере по умолчанию, какая кодировка документа. У меня ваш код работает.
 

antson

Новичок
Партнер клуба
Array ( [city] => В )
Все врут (с) Д.Хаус

запостил сюда код с примера а не тот что реально исполняешь
а в посте должна быть переменная names
 
Сверху