[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Передача данных методом POST
Festby
Подскажите:

Я из html файла передаю данные в php файл методом POST:

В javascript вот такая строчка:
document.stat.kom1nk.value = kom1[0];

в html файле:
<form action="robot.php" method="post" name="stat">
<input name="kom1nk" type="hidden" value="">
<input name="ok" type="submit" value="OK">
</form>

в php файле:

echo $kom1nk = $_POST["kom1nk"]."<br>";
echo $kom1nk = strlen(trim($_POST["kom1nk"]))."<br>";

при выполнении файла php будет на экрате:
ФК Хилверсюм
23

Почему 23?
Я считаю 12 smile.gif



Спустя 1 минута, 52 секунды (10.11.2010 - 17:30) DmitryOpalev написал(а):
Не знаю... не понятно вообще, откуда цифры эти берутся...
Вы же сами поле заполняете...

Спустя 4 минуты, 26 секунд (10.11.2010 - 17:34) festby написал(а):
Даже если я пишу в javascript:
document.stat.kom1nk.value = "ФК Хилверсюм";

Спустя 6 минут, 58 секунд (10.11.2010 - 17:41) DmitryOpalev написал(а):
echo $kom1nk = $_POST["kom1nk"]."<br>";
echo $kom1nk = strlen(trim($_POST["kom1nk"]))."<br>";

Этот код PHP и с JS он не связан... по крайней мере по тому коду, который вы показали...

Спустя 2 минуты, 30 секунд (10.11.2010 - 17:43) Festby написал(а):
Получается он считает любую русскую букву за 2 символа, а цифры, знаки, англ. буквы как 1.
Может это из-за кодировок?

Спустя 6 минут (10.11.2010 - 17:49) DmitryOpalev написал(а):
Мммм... не представляю такую кодировку, если честно biggrin.gif
Может вы покажите место взаимосвязи JS и PHP... и если можно сами скрипты...

Спустя 8 минут, 32 секунды (10.11.2010 - 17:58) inpost написал(а):
mb_strlen - для работы с 2х байтными кодировками, такими как UTF-8

Спустя 8 минут, 12 секунд (10.11.2010 - 18:06) Festby написал(а):
HTML:
<script type="text/javascript">
function
vibor()
{
document.stat.kom1nk.value = "ФК Хилверсюм";
}
</script>
</head>
<body
style="margin: 0pt;" onLoad="vibor()">
<form
action="robot.php" method="post" name="stat">
<input
name="kom1nk" type="hidden" value="">
<input
name="ok" type="submit" value="OK">
</form>


PHP:

<?php
echo $kom1nk = strlen(trim($_POST["kom1nk"]))."<br>";
echo $kom1nk = $_POST["kom1nk"]."<br>";

$namekom = array("Алтена","Ахиллес'29","Барони","Вестландия","В СКО'61","Де Валк","ДОВО","Леонидас","Монтфорт","Нептунус","Олде Весте'54","Руйнсбургсе Бойз","Спарта Нейкерк","ФК Хилверсюм","Харденберг","Юлиана'31");

for ($i=0; $i<16; $i++)
{
if ($namekom[$i] == $kom1nk)
{
echo "OK";
};
}
?>


1. Почему не срабатывает сравнение?
На экран выводит только:
23
ФК Хилверсюм

Спустя 1 минута, 7 секунд (10.11.2010 - 18:07) Festby написал(а):
Цитата (inpost @ 10.11.2010 - 14:58)
mb_strlen - для работы с 2х байтными кодировками, такими как UTF-8

Даже если поменять strlen на mb_strlen выдает значение 23

Спустя 42 секунды (10.11.2010 - 18:08) sergeiss написал(а):
Festby - используй тэги оформления кода!!! Это кнопки справа-сверху, рядом с полем ввода текста.

А по сути вопроса... Что там у тебя за бардак такой? Перезаписывается переменная, в итоге "к чему-то там" приписывается текст <br>, а в сравниваемых строках этого текста нету.
И потом результат присвоения ты выводишь smile.gif Потому и такие хреновины у тебя выводятся.

Короче говоря... Бардак smile.gif

Спустя 2 минуты, 27 секунд (10.11.2010 - 18:10) Festby написал(а):
Цитата (sergeiss @ 10.11.2010 - 15:08)
Festby - используй тэги оформления кода!!! Это кнопки справа-сверху, рядом с полем ввода текста.

Сорри, больше такое не повториться.

Спустя 4 минуты, 29 секунд (10.11.2010 - 18:15) sergeiss написал(а):
Festby - я потом уже, после твоего ответа, сделал добавку к предыдущему своему ответу smile.gif Прочитай и подумай. И твоя проблема может уйти за 3 секунды, будто её и не было smile.gif

Спустя 9 минут, 28 секунд (10.11.2010 - 18:24) Festby написал(а):
Цитата (sergeiss @ 10.11.2010 - 15:15)
Festby - я потом уже, после твоего ответа, сделал добавку к предыдущему своему ответу smile.gif Прочитай и подумай. И твоя проблема может уйти за 3 секунды, будто её и не было smile.gif

Спасибо большое.
Пошел отдыхать smile.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.