Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Нужна помощь в парсировании Excel. НЕБЕСПЛАТНО!
 
 автор: klopik   (09.09.2005 в 10:12)   письмо автору
 
 

Вчера я тут ветку поднимал про организацию обновления прайс-листа на сайте. Так вот, было много советов, но я остановился на парсировании xls прямо в html. У меня есть 3 разных парсера, которые нашел в сети. Попробовал их - работают прекрасно, меня устраивают. Но, как Вы знаете, он выдает переработанный XLS только в виде массива в страничку PHP, а не в виде статичных данных HTML. Так вот, для того, чтобы его использовать, нужно написать кусок кода, который эти массивы загонял бы в виде HTML на мою страницу с прайсом. Я PHP только начал изучать, поэтому сам смогу это сделать только через 1-2 месяца, а нужно побыстрее. Кто сможет мне помочь? Конечно не бесплатно :)
Примеры работы парсеров on-line:
http://www.softclub.org/excelexplorer/demo/
http://www.excelparser.com/demo/sample/xls2html/

   
 
 автор: elenaki   (09.09.2005 в 12:02)   письмо автору
 
   для: klopik   (09.09.2005 в 10:12)
 

есть программа MySQL-Front, в которую можно загрузить csv-таблицы и получить на выходе НТМL-документ. это быстро, если не надо потом ничего исправлять. а если надо? а если тыща страниц?

вполне можно обойтись тем куском кода, который я предложила для варианта с базой данных. у вас все данные в массиве. что мешает вместо занесения в базу выводить на экран в виде таблицы постранично?

   
 
 автор: klopik   (09.09.2005 в 12:13)   письмо автору
 
   для: elenaki   (09.09.2005 в 12:02)
 

Лена, согласен, что ничего не мешает, но дело в том, пока я буду все это делать САМ - пройдет месяц! Я программировал только на 1С и Visual Basic. Для меня PHP пока что темный лес. Хочется простоты, отлаженности и всеприменимости. Поэтому я за парсер! У меня есть несколько сайтов, где я бы хотел это внедрить.
Мне все равно как это будет реализовано, но хочется чтобы на выходе получал HTML таблицу как можно более близкую по структуре к EXCEL файлу. Вопрос в том как все это прикрутить к сайту если у нас уже есть спарсированный код?
Типа загрузил юзер файл, нажал submit - его перебросило уже на готовый сформированный прайс! Или это без БД никак не сделать?

   
 
 автор: Duran   (09.09.2005 в 12:16)   письмо автору
 
   для: elenaki   (09.09.2005 в 12:02)
 

Елена права, просто сохраните ваш XLS в CSV и прочитайте файл через PHP.
Думаю, что если вы прочитаете про функцию fgetcsv в справочнике на этом же сайте, то сможете обрабатывать прайс уже к вечеру :-).

   
 
 автор: klopik   (09.09.2005 в 12:29)   письмо автору
 
   для: Duran   (09.09.2005 в 12:16)
 

Что-ж вы народ за упрямый! :)))) Мне хочется без csv! Хочу красиво через парсер!
Почему не хотите заработать 50уе? У кого есть CitiBank карта - переведу хоть через час через инет!
Итак: Я вам высылаю 3 разных парсера. Сами решаете какой из них проще прикрутить к сайту. Вы решаете задачу. Объясняете работу. Я плачу. Или сначала плачу :) Как захотите.
Просто не так много времени у меня, чтобы писать код. Все равно будет кривым по-началу.

   
 
 автор: elenaki   (09.09.2005 в 12:35)   письмо автору
 
   для: klopik   (09.09.2005 в 12:29)
 

хихи. программисты - народ упрямый. и бесполезную работу не хочет делать даже за деньги. мартышкин труд. вы можете прямо в Excelе сделать HTML-документ и загрузить его потом на сервер (можно через форму). это, конечно, непрофессионально. но быстро, дешево и сердито.

сейчас посмотрю, что можно придумать...

   
 
 автор: klopik   (09.09.2005 в 12:42)   письмо автору
 
   для: elenaki   (09.09.2005 в 12:35)
 

Вчера такой мне вариант предложили на автофоруме: таблица Excel -> копируем в Word -> Сохраняем как WEB -> смотрим код -> вставляем через форму в страницу. Оригинально! Но там такой код получается грязный! Ужас!

Я сам программист, так что знаю как в лом иногда бывает кодить. Хотя если бы это заняло у меня 2-3 часа - запросто бы согласился за 50 уе! Просто в данном случае мне легче распрощаться с 50 уе и получить от заказчика 100уе за эту фичу, чем самому сидеть полмесяца а потом получить кривой код, который будет работать через раз!

   
 
 автор: elenaki   (09.09.2005 в 12:47)   письмо автору
 
   для: klopik   (09.09.2005 в 12:42)
 

вместо строк:

$sqlquery = 'INSERT INTO poul_price VALUES ('; // здесь изменить имя таблицы
/// здесь - имена полей
$sqlquery .= '"' .$line_exp[0] . '"'; // id
$sqlquery .= ',"'.$line_exp[1] . '"'; //price
$sqlquery .= ',"'.$line_exp[2] . '"'; // offer
$sqlquery .= ',"'.$line_exp[3] . '"'; //availab
$sqlquery .= ',"'.$line_exp[4]. '"'; //famcat
$sqlquery .= ',"'.$line_exp[5]. '"'; //subcat
$sqlquery .= ',"'.$line_exp[6]. '"'; //manuf
$sqlquery .= ',"'.$line_exp[7]. '"'; //marka
$sqlquery .= ',"'.$line_exp[8]. '"'; //descr
$sqlquery .= ',"'.$line_exp[9]. '"'; //retprice

$sqlquery .= ')';

пишите:


$stroke = '<tr>'; 
    $stroke .= '<td>' .$line_exp[0] . '</td>';  // id 
    $stroke .= '<td>'.$line_exp[1] . '</td>';  //price 
    $stroke .= '<td>'.$line_exp[2] . '</td>';  // offer 
    $stroke .= '<td>'.$line_exp[3] . '</td>';  //availab 
    $stroke .= '<td>'.$line_exp[4]. '</td>';   //famcat 
    $stroke .= '<td>'.$line_exp[5]. '</td>';   //subcat 
    $stroke .= '<td>'.$line_exp[6]. '</td>';   //manuf 
    $stroke .= '<td>'.$line_exp[7]. '</td>';  //marka 
    $stroke .= '<td>'.$line_exp[8]. '</td>';  //descr 
    $stroke .= '<td>'.$line_exp[9]. '</td>';  //retprice 
$stroke .= '</tr>'; 
echo $stroke;

и получаете строку таблицы. перед входом в цикл foreach надо таблицу начать тэгом <table>, а после завершения цикла закрыть тэгом </table>.

   
 
 автор: klopik   (09.09.2005 в 12:58)   письмо автору
 
   для: elenaki   (09.09.2005 в 12:47)
 

Лена, это в каком из парсеров? Что-то не нашел я такого...Стыдно конечно...:)

   
 
 автор: elenaki   (09.09.2005 в 13:07)   письмо автору
 
   для: klopik   (09.09.2005 в 12:58)
 

это не в парсере, а в том коде, который я дала вчера в другой теме.

   
 
 автор: PAKETA   (09.09.2005 в 12:43)   письмо автору
 
   для: klopik   (09.09.2005 в 10:12)
 

))) глянул я первый парсер... прикольно работает!
Но если ты прогиш на VB достаточно хорошо то наверное тебе не составит труда за день другой разобраться в PHP и найти тот кусочек кода где он все это дело выводит на страничку...и...поменять.....темболее раз он выводит в виде таблицы то можешь проще сделай поиск по...к примеру <TR> <TD> .... методом "тыка" найди где именно формируются эти строчки и.... выводи их в свой прайс!!! )))

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования