|
|
|
| Вчера я тут ветку поднимал про организацию обновления прайс-листа на сайте. Так вот, было много советов, но я остановился на парсировании 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/ | |
|
|
|
|
|
|
|
для: klopik
(09.09.2005 в 10:12)
| | есть программа MySQL-Front, в которую можно загрузить csv-таблицы и получить на выходе НТМL-документ. это быстро, если не надо потом ничего исправлять. а если надо? а если тыща страниц?
вполне можно обойтись тем куском кода, который я предложила для варианта с базой данных. у вас все данные в массиве. что мешает вместо занесения в базу выводить на экран в виде таблицы постранично? | |
|
|
|
|
|
|
|
для: elenaki
(09.09.2005 в 12:02)
| | Лена, согласен, что ничего не мешает, но дело в том, пока я буду все это делать САМ - пройдет месяц! Я программировал только на 1С и Visual Basic. Для меня PHP пока что темный лес. Хочется простоты, отлаженности и всеприменимости. Поэтому я за парсер! У меня есть несколько сайтов, где я бы хотел это внедрить.
Мне все равно как это будет реализовано, но хочется чтобы на выходе получал HTML таблицу как можно более близкую по структуре к EXCEL файлу. Вопрос в том как все это прикрутить к сайту если у нас уже есть спарсированный код?
Типа загрузил юзер файл, нажал submit - его перебросило уже на готовый сформированный прайс! Или это без БД никак не сделать? | |
|
|
|
|
|
|
|
для: elenaki
(09.09.2005 в 12:02)
| | Елена права, просто сохраните ваш XLS в CSV и прочитайте файл через PHP.
Думаю, что если вы прочитаете про функцию fgetcsv в справочнике на этом же сайте, то сможете обрабатывать прайс уже к вечеру :-). | |
|
|
|
|
|
|
|
для: Duran
(09.09.2005 в 12:16)
| | Что-ж вы народ за упрямый! :)))) Мне хочется без csv! Хочу красиво через парсер!
Почему не хотите заработать 50уе? У кого есть CitiBank карта - переведу хоть через час через инет!
Итак: Я вам высылаю 3 разных парсера. Сами решаете какой из них проще прикрутить к сайту. Вы решаете задачу. Объясняете работу. Я плачу. Или сначала плачу :) Как захотите.
Просто не так много времени у меня, чтобы писать код. Все равно будет кривым по-началу. | |
|
|
|
|
|
|
|
для: klopik
(09.09.2005 в 12:29)
| | хихи. программисты - народ упрямый. и бесполезную работу не хочет делать даже за деньги. мартышкин труд. вы можете прямо в Excelе сделать HTML-документ и загрузить его потом на сервер (можно через форму). это, конечно, непрофессионально. но быстро, дешево и сердито.
сейчас посмотрю, что можно придумать... | |
|
|
|
|
|
|
|
для: elenaki
(09.09.2005 в 12:35)
| | Вчера такой мне вариант предложили на автофоруме: таблица Excel -> копируем в Word -> Сохраняем как WEB -> смотрим код -> вставляем через форму в страницу. Оригинально! Но там такой код получается грязный! Ужас!
Я сам программист, так что знаю как в лом иногда бывает кодить. Хотя если бы это заняло у меня 2-3 часа - запросто бы согласился за 50 уе! Просто в данном случае мне легче распрощаться с 50 уе и получить от заказчика 100уе за эту фичу, чем самому сидеть полмесяца а потом получить кривой код, который будет работать через раз! | |
|
|
|
|
|
|
|
для: 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>. | |
|
|
|
|
|
|
|
для: elenaki
(09.09.2005 в 12:47)
| | Лена, это в каком из парсеров? Что-то не нашел я такого...Стыдно конечно...:) | |
|
|
|
|
|
|
|
для: klopik
(09.09.2005 в 12:58)
| | это не в парсере, а в том коде, который я дала вчера в другой теме. | |
|
|
|
|
|
|
|
для: klopik
(09.09.2005 в 10:12)
| | ))) глянул я первый парсер... прикольно работает!
Но если ты прогиш на VB достаточно хорошо то наверное тебе не составит труда за день другой разобраться в PHP и найти тот кусочек кода где он все это дело выводит на страничку...и...поменять.....темболее раз он выводит в виде таблицы то можешь проще сделай поиск по...к примеру <TR> <TD> .... методом "тыка" найди где именно формируются эти строчки и.... выводи их в свой прайс!!! ))) | |
|
|
|