Модераторы: Illuminaty
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Excel -> HTML, Импорт таблицы из файла Excel. 
:(
    Опции темы
iddqd
Дата 25.6.2007, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 491
Регистрация: 16.11.2005

Репутация: нет
Всего: 2



Необходимо преобразовать таблцу из Экселя в нормальный хтмл.
1. Сейчас пишет коды символов вместо букв, а надо буквы.
2. Пишет стиль для каждой ячейки по сто раз. Страница становиться огромной.

Как это реализовать? Возможна ли хоть какая-нибудь автоматизация процесса?


--------------------
PM MAIL   Вверх
BuShaRt
Дата 28.6.2007, 14:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



iddqd, 
Надо писать свой интрипритатор, или использоваться чужие...

Алгоритм:
1. Парситься xls файл.
2. На основе полученных данных создаеться html  страничка.
PM MAIL   Вверх
sh_iv
Дата 29.6.2007, 17:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 16
Регистрация: 2.3.2007

Репутация: нет
Всего: нет



iddqd, 
ну как автоматизировать можно...
Есть такая функция "Найти и заменить". Вот то, что откровенно лишнее он добавляет (мусора-то он много засунет) ищите и заменяете на пустоту. 
Потом делаете то же для стилей, а в таблице стилей создаёте стиль для td.
PM MAIL   Вверх
Str!pe
Дата 29.6.2007, 18:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


профиль удален
****


Профиль
Группа: Участник
Сообщений: 2426
Регистрация: 12.6.2005
Где: На земле.

Репутация: 3
Всего: 152



Цитата(BuShaRt @  28.6.2007,  14:31 Найти цитируемый пост)
Надо писать свой интрипритатор, или использоваться чужие...

Круто! Зачет!

iddqd, 
Такая тема на моем веку уже поднималась в этом разделе. Попробуйте поискать.

Это сообщение отредактировал(а) Str!pe - 29.6.2007, 18:39


--------------------
Со мной можно связаться по скайпу или по аське.
Занимаюсь продвижением сайтов - самой таргетированной рекламой.
PM MAIL ICQ Skype   Вверх
kit_kat
Дата 29.6.2007, 19:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 89
Регистрация: 25.2.2007
Где: Петербург

Репутация: нет
Всего: 6



Я обычно клиентские прайсы перевожу так:
пишу макрос (если структура таблицы не очень простая)-перевод содержимого в тестовый файл  со своими разделителями между данными, если простая- можно просто сохранить в формат cvs, но там разделитель ";" иногда мешает для данных

потом на php достаю файл и по разделителям восстанавливаю таблицу.


PM MAIL WWW   Вверх
Str!pe
Дата 29.6.2007, 23:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


профиль удален
****


Профиль
Группа: Участник
Сообщений: 2426
Регистрация: 12.6.2005
Где: На земле.

Репутация: 3
Всего: 152



Цитата(iddqd @  25.6.2007,  10:52 Найти цитируемый пост)
Необходимо преобразовать таблцу из Экселя в нормальный хтмл.

Это ты сам делать будешь или пользователи? Если сам то зайди сюда первые три строчки выдачи.


--------------------
Со мной можно связаться по скайпу или по аське.
Занимаюсь продвижением сайтов - самой таргетированной рекламой.
PM MAIL ICQ Skype   Вверх
BuShaRt
Дата 30.6.2007, 21:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1391
Регистрация: 29.6.2006

Репутация: нет
Всего: 6



Аналог..

Класс используемый в данном коде.

Код

$name = 'xlsFile.xls';
require_once 'class/reader.php';
$data = new Spreadsheet_Excel_Reader();
$data->read($name);
$html = '<table  border="0" cellpadding="3" cellspacing="1" bgcolor="#848282" align="left">
<tr align="left" bgcolor="#696969">
    <td >Наименование</td>
    <td>Цена</td>
</tr>
        ';
        for ($i = 12; $i <= $data->sheets[0]['numRows']; $i++) {
            if (in_array($data->sheets[0]['cells'][$i][1], $titles)) {
                $html .= '
<tr align="left" bgcolor="#A9A9A9">
    <td >'.$data->sheets[0]['cells'][$i][1].'</td>
    <td>-</td>
</tr>
                ';        
                continue;
            }
            $html .= '
<tr align="left" bgcolor="#ffffff">
    <td >'.$data->sheets[0]['cells'][$i][1].'</td>
    <td>'.$data->sheets[0]['cells'][$i][4].'</td>
</tr>
            ';
        }
        $html .= '</table>';
        $file = fopen('price/index.html', "w");
        fwrite($file, $html);
        fclose($file);    


Это сообщение отредактировал(а) BuShaRt - 30.6.2007, 21:20
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Вёрстка веб-сайтов | Следующая тема »


 




[ Время генерации скрипта: 0.0517 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.