<?
header('Content-Type: text/html; charset=utf-8');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Контакты</title>
</head>
<body>
<form action="forma.php">
Введите имя <br />
<input type="text" name="nm" /> <br />
Введите количество лет <br />
<input type="text" name="year" /> <br />
<input type="submit" value="Отправить" />
</form>
</body>
</html>
и файл forma.php
<?php
header('Content-Type: text/html; charset=utf-8');
echo "Имя - $_POST[nm] ";
echo "Пароль - $_POST[year] ";
?>
Выводит вообще такое при отправки формы:
п»ї
Warning: Cannot modify header information - headers already sent by (output started at Z:\home\test.ru\www\forma.php:2) in Z:\home\test.ru\www\forma.php on line 3
�мя - Пароль -
Как правильно написать,чтоб не выводило такую ерунду?
Спустя 9 минут, 27 секунд (4.12.2010 - 23:39) sharki написал(а):
echo "Имя - ".$_POST['nm'];
echo "Пароль - ".$_POST['year'] ;
Спустя 2 минуты, 48 секунд (4.12.2010 - 23:42) Golovastik написал(а):
Странно, но выводит тоже самое, не могу понять почему.
Спустя 1 минута, 22 секунды (4.12.2010 - 23:43) waldicom написал(а):
Возможно файл сохранен в UTF8 BOM
Надо пересохранить в UTF-8 without BOM
Перед вызовом функции header() вообще ничего не должно стоять (в обычном случае)
Надо пересохранить в UTF-8 without BOM
Перед вызовом функции header() вообще ничего не должно стоять (в обычном случае)
Спустя 2 минуты, 49 секунд (4.12.2010 - 23:46) Марафонец написал(а):
<form action="forma.php" method="post">
Это для того, чтобы передать данные с помощью POST
Второе
$_POST['nm']Лучше будет вот так
И самое главное сохраните документы в utf-8 без BOM и проблема с заголовком пропадет, как и с кодировкой.
Спустя 59 минут, 29 секунд (5.12.2010 - 00:46) Golovastik написал(а):
Странно, сработало, а чё так, почему без Бома?
Всё вроде отлично, но в Опере,хотя ов всех браузерах нормально.
ПРи отправке формы, значения которые вводил в поля формы не отображаются при нажатии кнопки "Отправить".
Файл forma.php выглядит у меня так:
Во всех браузерах значения подставляются кроме Опера 10,63. Что можно сделать?
Всё вроде отлично, но в Опере,хотя ов всех браузерах нормально.
Версия:
10.63
Сборка:
3516
Платформа:
Win32
Система:
Windows XP
Модуль XHTML+Voice:
Плагин не загружен
ПРи отправке формы, значения которые вводил в поля формы не отображаются при нажатии кнопки "Отправить".
Файл forma.php выглядит у меня так:
<?php/*выше этой строки пробелов никаких нет*/
header('Content-Type: text/html; charset=utf-8');
echo 'Имя'.$_POST['nm'];
echo ' Пароль'.$_POST['year'];
?>
Во всех браузерах значения подставляются кроме Опера 10,63. Что можно сделать?
Спустя 24 минуты, 54 секунды (5.12.2010 - 01:10) Марафонец написал(а):
Потому что некоторые редакторы при сохранении документа в UTF-8 добавляют в начале файла байты 0xEF, 0xBB, 0xBF. Для того чтобы другие редакторы могли понять что этот документ закодирован в UTF-8, где-то так Проблемы начинаются когда эти байты идут впереди header location, что вызывает варнинг в PHP и проблемы с отображением Почитайте тут
В опере должно работать, может какой-то глюк самой программы, так как у меня та же версия, все прекрасно передается.
В опере должно работать, может какой-то глюк самой программы, так как у меня та же версия, все прекрасно передается.