Мини интернет-магазин на 50 позиций: Как импортировать цены? @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 4 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
Lieto Муж.
участник
13
Сообщения: 1501
Зарегистрирован: 28.05.05
Откуда: Киев
Заголовок сообщения: Мини интернет-магазин на 50 позиций: Как импортировать цены?
Сообщение Добавлено: 23 Январь 2006, 10:32:54 
Собственно сабж.
Я с программированием знаком на уровне написания скрипта счётчика сообщений )) , посему имею два вопроса
1. Есть ли какой-то бесплатный удобный скрипт для небольшого инет магазина с одной категорией товаров (всего 50 позиций), с возможностью загрузки прайсов из экселя?
2. Как вообще лучше подобный сабж реализовать? Это вроде как для себя. Руководство хочет, а как по мне то жуткий геморой т.к. в нашем прайсе более 2000 позиций.. как импортировать нужные — для меня загадка. (т.е. всего позиций 2000, но в инет магазине из них будет продаваться 50)

Пока писАл возник третий вопрос и четёртый.
3. Посоветуйте бесплатный переводчик xls в htm (копи-пастом не особо красиво получается)
4. Возможно ли, чтобы при клике на ссылку вызывающую хтм страницу с прайсом, запускался некий скрипт ищущий данную позицию и подсвечивающий её? Типа [url]http://blabla.ua/script.php?file=price.htm + найти и подсветить "самоучитель по пхп"[/url] Или так нельзя сделать? ) п.с. наверное я первый такой изврат придумал ))

спасибо за Ваше внимание.)

_________________
На вкус и цвет все фломастеры разные. Проверено.
MpaK999 Муж.
участник
1
Сообщения: 1716
Зарегистрирован: 14.11.02
Откуда: Ufa/Russia
Сообщение Добавлено: 23 Январь 2006, 12:19:04 
Lieto, по технологии скажу, использовали такое до 3000 позиций

1. определяешь колонки, что по чем, создаешь таблицу в базе
2. загружаешь эксель, разбираешь его, я использовал Spreadsheet::ParseExcel так как писалось все на перл
3. всё, пишешь срипт вывода, для 50 позиций проще не бывает


по пунктам

2. например нужные позиции помечать в колонке экселя например +
4. да, регулярным выражением например фразу менять <span class="select">$1</span>

_________________
:: metal kick ass ::
Lieto Муж.
участник
13
Сообщения: 1501
Зарегистрирован: 28.05.05
Откуда: Киев
Сообщение Добавлено: 23 Январь 2006, 12:24:50 
Относительно первого пункта увы слишком сложно для меня на текущем этапе.

Не могли бы вы четвёртый расписать чуть подробнее? Думаю это легче и остановлюсь на нём. Может можно сделать что-то типа такого: cкрипт находит в документе прайс.хтм определённую фразу (заданную мной на гипер-ссылке) и "энкорится" в документе прайс.хтм рядом с ней.

_________________
На вкус и цвет все фломастеры разные. Проверено.
fStrange Муж.
соучастник
10
Сообщения: 900
Зарегистрирован: 25.07.05
Откуда: Ростов-на-Дону
Сообщение Добавлено: 23 Январь 2006, 13:55:52 
проще...
сохраняем экзель документ как csv
далее задача на 2 пальца... в основе fgetcsv

привожу кусок кода... одно из старых решений... там много ...сам разбирай
Код:
$rFile = fopen($_FILES['file']['tmp_name'], "r");
      $aCsvVal = explode(',',_CsvVal);
      
      $aRow = fgetcsv($rFile, 4000, _CsvSep);// 1 строку пропустили
      if (count($aRow)!=15) die('!Ошибка! Неверный формат файла! должно быть 15 колонок');
      $rResult = mysql_query('DELETE FROM `m_cat` ') or die(mysql_error());//чистим старую таблу
      $iCount = 0;
      while ( ($aRow = fgetcsv($rFile, 4000, _CsvSep) ) !== FALSE ) {
         //echo implode(' | ',$aRow).'<br />';
         $iCount++;
         for ($i=0;$i<=14;$i++){
         
            if (!isset($aRow[$i])) $aRow[$i] = 0;
            
            switch ($aCsvVal[$i]){
               case 'int':
                $aVal[$i] = intval(trim($aRow[$i]));
                  break;
               case 'float':
                $aVal[$i] = floatval(str_replace(',', '.', trim($aRow[$i])) );
                break;
               case 'txt':
                $aVal[$i] = '"' . mysql_escape_string(trim($aRow[$i])) . '"';
                break;
               default:
                $aVal[$i] = 0;
            }
         }
         $aVal[15] = mktime();
         $aVal[16] = '"'.$iCount.':нет примечаний"';
         $sQuery = str_replace('%val%',implode(',',$aVal), _CsvQuery);
         //echo $sQuery ;
         $rResult = mysql_query($sQuery) or die(mysql_error());
         //if ($iCount == 20) exit;

_________________
Записки мобильного веб разработчика
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 4 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100