Генериране на файлове с JavaScript

Често при разработването на уеб приложение става необходимо да се даде файлът на потребителя за изтегляне. Съдържанието на такъв файл може да бъде напълно различно, вариращо от конфигурационни данни до отчети, статистическа информация, която се генерира автоматично.

За да организирате такава система, трябва да напишете скрипт, който ще направи избор от базата данни, ще запише резултатите във файл и ще го предостави на потребителя за изтегляне. В този урок ще демонстрираме нов подход към тази задача.

Нека започнем с написването на прост HTML код, който ще съдържа текстово поле и бутон.

В този пример използваме HTML5 doctype, за да можем да се възползваме от новите технологии. За да работи всичко в IE, трябва да включим специален HTML5 скрипт.

В самия край на файла ще добавим връзка към jQuery, плъгина generateFile, който ще напишем малко по-късно и script.js, откъдето ще се управлява програмата.

javascript

изтегляне.php

В този PHP скрипт създаваме име на файл и генерираме заглавките, от които се нуждаем. Плъгинът, който ще напишем, ще предава параметри чрез POST заявка: име на файл и съдържание. Скриптът ще прочете получените данни, след което ще създаде заглавки и ще изпрати генерирания файл за изтегляне.

Както вече разбрахте, нашият плъгин прави POST заявка към файла download.php. Можем да използваме AJAX за предаване на данните, но не и този път.

В нашия пример ще генерираме скрит iframe, където ще запишем данни от формуляра и след това ще ги изпратим чрез POST заявка.

Нека най-накрая да започнем:

активи/jquery.generateFile.js

Обърнете внимание на функцията setTimeout(). Без него няма да можем да използваме iframe в Internet Explorer. INВ нашия случай отнемаме малко време, за да завършим DOM.

А ето и приложението на нашия плъгин:

активи/script.js

Когато извиквате $.generateFile, трябва да предадете името на файла и текста на файла download.php.

По същия начин можете да създадете поколение на doc файлове или файлове с други формати, базирани на Microsoft Office XML. Надявам се, че урокът е бил полезен за вас.

Този урок е подготвен за вас от екипа на ruseller.com Източник на урока: www.tutorialzine.com/2011/05/generating-files-javascript-php/ Превод: Станислав Протасевич Урокът е създаден: 28 юни 2011 г. Прегледи: 35441 Правила за препечатване

5 последни урока от рубриката "PHP"

Филтриране на данни с zend-filter

Когато става въпрос за сигурност на уебсайтове, фразата „филтрирай всичко, проверявай всичко“ винаги ще бъде актуална. Днес ще говорим за филтриране на данни.

Контекстуално избягване с zend-escaper

Свързване на Zend модули към Expressive

Expressive 2 поддържа възможността за свързване на други ZF компоненти по специален начин. Не всеки харесва това решение. В тази статия ще ви разкажем как подобрихме процеса на свързване на няколко модула.

Съвет: Подаване на информация към Google Analytics чрез API

Да предположим, че трябва да изпратите някаква информация до Google Analytics от сървърен скрипт. Как да го направим. Отговорът е в тази публикация.

Селекция от PHP пясъчници

Селекция от няколко типа PHP пясъчници. На някои можете да тествате кода си онлайн, но има и решения, които можете да приложите на сайта си.