2010-12-02 2 views
0

У меня есть таблица MySQL, содержащая пользовательские данные.Как сделать Rich Text Format или PDF-файлы, используя данные из таблицы MySQL?

Я хочу, чтобы администратор мог нажать кнопку и загрузить все пользовательские данные в организованный текстовый формат или PDF-файл, по одному пользователю на страницу.

Как это сделать?

ответ

3

между Rich Text Format (RTF) и PDF, я призываю вас, чтобы наклониться к RTF.

Причина: доступна для редактирования. Просто откройте его в MS Word (или многих других редакторах), и ваш клиент сможет добавлять заголовки, нижние колонтитулы, подчеркивать некоторые данные, легко копировать в более длинный документ и т. Д.

Я создаю «многословные» отчеты для моего клиентов в RTF, и они считают, что это здорово.

PDF предназначен для печати. Период. Поэтому, хотя можно повторно назначить PDF-документ, всегда будет проще сделать это из документа RTF.

Есть несколько библиотек PHP available. Или вы можете сгенерировать его с нуля самостоятельно. Example и example.

Кроме того, программное обеспечение, я рекомендую руководство по Sean Burke.

+1

Я вижу, спасибо за ссылку, это определенно то, что мне нужно. И спасибо за совет, я буду придерживаться RTF так же, как вы упомянули. – 2010-12-03 01:56:40

1

PHPExcel library стоит вашего внимания, а также поддерживает различные форматы

2

Я знаю, что это ответ, но я столкнулся с этой проблемой в последнее время, и есть несколько вопросов по этому вопросу, но нет ответов, которые не связаны с какой-либо третьей стороной lib или другим программным обеспечением - вот мое решение.

Просто создайте документ RTF с помощью текстового редактора, такого как MS Word или Notepad или TextEdit на Mac, и используйте функцию PHP str_replace(), чтобы удалить нужное содержимое.

Пример:

//load the rtf template as a string 
$rtf = file_get_contents('mytemplate.rtf'); 

//replace placeholder text with content from database 
$rtf = str_replace('content', 'here is my rtf content!', $rtf); 

//and now serve the file as an rtf download: 
Header("Content-type: application/rtf"); 
Header("Content-Disposition: attachment;filename=rtf.rtf"); 
echo $rtf; 
exit(); 

Я не уверен, если тот же самый вид техники можно использовать для PDF-файлов, но это спасло меня много головной боли в прошлом, особенно при попытке использовать довольно плохо документированный PHP/RTF или рассматривает решения, которые включают в себя возможность установки программного обеспечения на сервер или выполнения команды из оболочки.

Я также использовал PHPRTFLite, но оказался слишком сложным, чтобы выполнять простые задачи и слишком смутно документирован, чтобы оказать большую помощь.