Помогите загнать выборку SELECT в CSV

Тема в разделе "PHP", создана пользователем xriby, 8 дек 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. xriby

    xriby Создатель

    Регистр.:
    28 сен 2009
    Сообщения:
    23
    Симпатии:
    0
    Помогите загнать выборку SELECT * FROM table в CSV файл, а лучше сразу в XLS.
    Может есть готовые решения?
     
  2. jik

    jik

    Регистр.:
    11 мар 2009
    Сообщения:
    243
    Симпатии:
    133
    вариант 1:
    Код:
    select * into outfile '/tmp/log.csv' from TABLE...
    полученный файл открывается в excel и затем можно сохранить в xls.

    вариант 2:
    если требуется автоматизировать процесс создания xls,
    то есть такой проект с открытым кодом на сорсфорг:

    PHP Dynamic Word/Excel Generator - php код для создания налету файлов в формате word/xls из mysql-запросов.
    Перейти по ссылке
     
    xriby нравится это.
  3. polyetilen

    polyetilen Заблокирован

    Регистр.:
    10 авг 2006
    Сообщения:
    814
    Симпатии:
    474
    вариант 3:
    сохранять в эксельный формат html:
    HTML:
    
    <html xmlns:o="urn:schemas-microsoft-com:office:office"
    xmlns:x="urn:schemas-microsoft-com:office:excel"
    xmlns="http://www.w3.org/TR/REC-html40">
    
    <head>
    <meta http-equiv=Content-Type content="text/html; charset=utf-8">
    
    </head>
    
    <body>
    
    <table border=1 cellpadding=0 cellspacing=0>
     <tr>
      <td x:num>1</td>
      <td x:num>2</td>
      <td x:num>3</td>
     </tr>
     <tr>
      <td>тест</td>
      <td></td>
      <td></td>
     </tr>
    </table>
    
    </body>
    
    </html>
    
    
    и сохранять файл с расширением .xls эксель откроет

    подробно можно посмотреть сохранив документ экселя в формате html
     
  4. xriby

    xriby Создатель

    Регистр.:
    28 сен 2009
    Сообщения:
    23
    Симпатии:
    0
    Код:
    select * into outfile '/tmp/log.csv' from TABLE...
    это на всех хостингах работает?
    зависит от версии или настройки mysql?
     
  5. jik

    jik

    Регистр.:
    11 мар 2009
    Сообщения:
    243
    Симпатии:
    133
    для пользователя mysql требуется привилегия FILE.
    Если она не установлена, то придется выбирать результат в цикле построчно и выводить в текстовый файл. Или использовать вариант 3, предложенный polyetilen.
     
Статус темы:
Закрыта.