Загрузка файла

Discussion in 'Говорим по-русски' started by kadyr.atakhanov, Jul 1, 2015.

  1. kadyr.atakhanov

    kadyr.atakhanov New Member

    Приветствую!
    А как получить урл загруженного файла? Например, в том же плагине новостей?
  2. kadyr.atakhanov

    kadyr.atakhanov New Member

    всё вопрос отпадает, в общем, вот так:
    Code (Text):
    {$core.page.nonProtocolUrl}/uploads/{$entry.image}
    а вот сейчас проверим, будет ли он работать для pdf файла...
  3. kadyr.atakhanov

    kadyr.atakhanov New Member

    нет, не работает )
  4. Vasily_B.

    Vasily_B. Project Manager

    Новости позволяют подгрузку только картинок. Поэтому pdf и прочие форматы не будут работать (
  5. kadyr.atakhanov

    kadyr.atakhanov New Member

    Да, это я понял) в общем пытаюсь найти среди других плагинов реализацию загрузки
  6. kadyr.atakhanov

    kadyr.atakhanov New Member

    Так как решение для данного вопроса не нашел, и пришлось отложить его. Но теперь этот вопрос стоит еще острее :)
    В общем, решил добавить возможность загружать файл в плагин новостей.
    Планирую именовать файлы по дате-времени загрузки, и хранить в специальной подпапке папки uploads

    Начал с добавления "сущности" pdffile в след. файлы
    • install.xml
    • index.php
    • templates/admin/manage.tpl
      • Code (Text):
        <div class="row">
                        <label class="col col-lg-2 control-label" for="input-image">{lang key='pdffile'}</label>
                        <div class="col col-lg-4">
                            {if isset($item.pdffile) && $item.pdffile}
                                <div class="input-group thumbnail thumbnail-single with-actions">
                                    {$item.pdffile}
                                </div>
                            {/if}
                            {ia_html_file name='pdffile' id='input-pdffile'}
                        </div>
                    </div>
    И вот теперь пытаюсь модифицировать метод _preSaveEntry (файл "admin/index.php"), добавив блок обработки загружаемого файла.
    собираюсь использовать следующую конструкцию,
    Code (Text):
    if (!copy($_FILES['pdffile']['tmp_name'], $uploadfile))
    { return false; }
    в общем, такие дела :confused:

    отпишусь, если что=-то получится
    Dayir_A. likes this.
  7. Dayir_A.

    Dayir_A. Staff Member

    Здравствуйте Кадыр,

    Извиняюсь за задержку с ответом. В общем я реализовал подгрузку PDF файла (там нет никакой валидации и к одной новости можно прикреплять только один файл)
    Можете скачать прикрепленный zip файл с модифицированным news плагином. Все изменения заключены в теги MOD // dartelov
    и некоторые изменения в файле install.xml:
    В отсеке с фразами:
    HTML:
    <phrases>
            <phrase category="admin" key="add_news">Add News</phrase>
            <phrase category="admin" key="alias">Alias</phrase>
            <phrase category="admin" key="body_is_empty">Body text is empty.</phrase>
            <phrase category="admin" key="edit_news">Edit News</phrase>
            <phrase category="admin" key="manage_news">Manage News</phrase>
            <phrase category="admin" key="news_added">Entry added.</phrase>
            <phrase category="admin" key="pdf">PDF</phrase>

            <phrase category="common" key="news">News</phrase>
            <phrase category="common" key="view_news">View News</phrase>

            <phrase category="frontend" key="no_news">Administrator has not posted any news.</phrase>
            <phrase category="frontend" key="posted">Posted</phrase>
            <phrase category="frontend" key="view_all_news">View all news</phrase>
            <phrase category="frontend" key="continue_reading">continue reading</phrase>
        </phrases>
    и в sql:
    Code (Text):
        <install>
            <sql>
                <![CDATA[
    CREATE TABLE `{prefix}news` (
        `id` mediumint(7) unsigned NOT NULL auto_increment,
        `member_id` int(11) unsigned NOT NULL,
        `lang` char(2) NOT NULL,
        `status` enum('inactive', 'active') NOT NULL default 'active',
        `date` datetime NOT NULL,
        `alias` varchar(50) NOT NULL,
        `title` varchar(150) NOT NULL,
        `body` text NOT NULL,
        `image` tinytext NOT NULL,
        `pdf` tinytext NOT NULL,
        PRIMARY KEY  (`id`),
        KEY `LANGUAGE` (`lang`),
        FULLTEXT KEY `SEARCH` (`title`, `body`)
    ) {mysql_version};
                ]]>
            </sql>
        </install>
    Обращайтесь, если появились вопросы.

    Attached Files:

    kadyr.atakhanov likes this.
  8. Vasily_B.

    Vasily_B. Project Manager

    kadyr.atakhanov likes this.
  9. Vasily_B.

    Vasily_B. Project Manager

    Ещё одна заметка по поводу elFinder ) В новой версии он легко интегрируется в CKEditor, так что теперь можно просто линковать на картинку используя Uploads Manager.
    kadyr.atakhanov and Dayir_A. like this.

Share This Page