Здравствуйте, кто-нибудь сталкивался с частичной потерей значений при передаче данных методом post.
Есть два скрипта, в одном выводится форма, в другом post-значения этой формы обрабатываются
Пример построения формы:
[CODE]CModule::IncludeModule('iblock');
echo "<div class='block_online_prais'>";
echo "<fo rm action='test.php' method='post' class='formular'>";
$arOrder = array("SORT" => "DESC");
$arFilter = array("IBLOCK_ID" => "3", "ACTIVE" => "Y", "DEPTH_LEVEL" => "1", "GLOBAL_ACTIVE" => "Y");
$rs_section_top = CIBlockSection::GetList($arOrder, $arFilter, true);
while($ar_section_top = $rs_section_top->Fetch()){
$name_section_top = $ar_section_top["NAME"];
$id_section_top = $ar_section_top["ID"];
$arFilterbot = array("IBLOCK_ID" => "3", "SECTION_ID" => $id_section_top, "ACTIVE" => "Y", "GLOBAL_ACTIVE" => "Y");
$rs_section_bot = CIBlockSection::GetList($arOrder, $arFilterbot, true);
echo "<div class='block_top_prais'>".$name_section_top."</div>";
while($ar_section_bot = $rs_section_bot->Fetch()){
$name_section_bot = $ar_section_bot["NAME"];
$id_section_bot = $ar_section_bot["ID"];
echo "<div class='toggle'>";
echo "<div class='toggler'><img src='/img/plus2.png' width='15' height='15' align='left' /></div>";
echo "<div class='block_section_prais'>".$name_section_bot."</div>";
$arFilterelement = array("IBLOCK_ID" => "3", "SECTION_ID" => $id_section_bot, "ACTIVE" => "Y"); //фильтр
$rs_element = CIBlockElement::GetList($arOrder, $arFilterelement, false, false );
echo "<div class='content'>";
echo "<table>";
while($ar_element = $rs_element->GetNext(false, false)){
$name_section_elm = $ar_element["NAME"];
$id_section_elm = $ar_element["ID"];
if(CModule::IncludeModule("catalog")) {
$ar_price = GetCatalogProductPrice($id_section_elm, 1);
$price = $ar_price['PRICE'];
}
echo "<tr>";
echo "<td class='prais_tdblock'>".$name_section_elm."</td>";
echo "<td class='prais_tdblock_2'>".$price."</td>";
echo "<td class='prais_tdblock_2'><input type='text' value='' name='".$id_section_elm."'></td>";
echo "</tr>";
}
echo "</table>";
echo "</div>";
echo "</div>";
}
}
echo "<div class='add-to-cart-holder form-button'>";
echo "<div class='bt'>";
echo "<span class='relto'></span>";
echo "<input class='input_but' type='s ubmit' value='Отправить'>";
echo "</div>";
echo "</div>";
echo "</form></div>";[/CODE]
Скрипт test.php (обработчик формы)
[CODE]function RemoveEmpty1($array, $assoc=false)
{
$Result = array();
foreach ($array as $key => $value) {
if ($value != '')
$Result[$key] = $value;
}
if ($assoc)
return array_values($Result);
else
return $Result;
}
$massiv = RemoveEmpty1($_POST);[/CODE]
В массив $massiv отправленные методом post элементы попадают частично, причем процентное соотношение попавших в обработчик значений из формы произвольно.
В чем может быть причина, с уважением, Александр