Добро пожаловать на сайт <БагБД>, где вы можете задавать вопросы о программировании и разработке на Битрикс и Битрикс24, и получать быстрые и квалифицированные ответы от профессионалов!

Загрузка файла Битрикс формой

00 голосов
1
Ребятки, выручайте!
Нужно сделать форму для создания элемента с аяксом. Вот отрывок кода:
Код
<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php");
require_once($_SERVER["DOCUMENT_ROOT"]."/bitrix/modules/main/include/prolog_admin_before.php");
?>

<?
echo "<pre>";
echo "\$_REQUEST<br>";
print_r($_REQUEST);
echo "<br>";
echo "\$_FILES<br>";
print_r($_FILES);
echo "</pre>";
?>


<?
  CModule::IncludeModule("fileman");

$aTabs = array(
  array("DIV" => "edit1", "TAB" => "Закладка", "ICON"=>"", "TITLE"=>""),
);

$tabControl = new CAdminTabControl("tabControl", $aTabs, false);

?>

<link rel="stylesheet" type="text/css" href="/bitrix/themes/.default/pubstyles.css">

<style type="text/css">
  table.edit-tab td {background-color:#F8F9FC !important; padding:0px !important;}
  #div_PREVIEW_PICTURE_tab_file td, #div_PREVIEW_PICTURE_tab_media td, #div_PREVIEW_PICTURE_tab_server td {font-size:11px; padding-top:-5px !important}
  table.edit-table td.imgtab-sel table.imgtab-tab td {color:#494949 !important;padding:0px !important;}
  table.edit-table td.imgtab-some table.imgtab-tab td {color:#818185 !important;padding:0px !important;}
  table.edit-form td {font-size:11px; font-weight:bold !important; color:#555556 !important;}
  table.edit-form .edit-tab td {font-weight:normal !important;}
</style>


<?
// отобразим заголовки закладок
$tabControl->Begin();

$tabControl->BeginNextTab();
?>
      <tr>
        <td>
          <form name="myForm">
              <table id="myTable">
              <tr>
                <td align="right">
                      <br>   
                    <?echo CMedialib::InputFile(
                            "tv_anons", 
                      "0",
                            array("IMAGE" => "Y", "PATH" => "Y", "FILE_SIZE" => "Y", "DIMENSIONS" => "Y",
                            "IMAGE_POPUP"=>"Y", "MAX_SIZE" => array("W" => 200, "H"=>200)), //info
                            array(), //file
                            array(), //server
                            array(), //media lib
                            array(), //descr
                            array()
                      );
                         ?>
                  <br>                  
                </td>
                 </tr>
              </table>
           </form>
        </td>
      </tr>
<?
  $tabControl->Buttons();
?>
    
  <div id="tab_1" style="text-align:right">
     <input class="button" type="button" name="Load" value="Load" onClick="document.myForm.submit();">
  </div>


<?
  $tabControl->End();
?>
<br> 


<?
require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");
?>


Сначала без аякса с перезагрузкой пробую тут, но не пойму почему массив $_FILES пустой!
А в $_REQUEST путь к загружаемому с компьютера файлу в разных браузерах разный, в Опере и Лисе только название файла, в ИЕ полный путь до файла (как раз то что мне нужно для аякса). Был бы везде полный путь к файлу я б сразу аякс прикручивал. Подскажите как быть.
спросил 25 Май, 13 от Frankon (280 баллов)

1 Ответ

00 голосов
Попробуйте в FORM добавить
Цитата
enctype="multipart/form-data"
http://htmlbook.ru/html/form/enctype.html
ответил 25 Май, 13 от sickmind (4,660 баллов)

Похожие вопросы

0 голосов
1 ответ
+1 голос
1 ответ
0 голосов
8 ответов
0 голосов
0 ответов