понедельник, 15 ноября 2010 г.

xampp 1.7.2, sendmail и denwer 3

До установки Windows 7 я работал с пакетом Denwer 3. Denwer отказался дружить с Windows 7, пришлось установить Xampp 1.7.2 (не помню, почему не установил 1.7.3).
В Denwer'е была хорошая фишка — это складывание писем в отдельную папку. Xampp не только не складывает письма в папку, но и напрочь отказывается отправлять почту без выдачи каких-либо ошибок в стиле «я не отправляю почту на нелокальные адреса».

Решение проблемы, взять эту приятную «фишку» у Denwer'а.
По шагам:
1. Создать папку !sendmail в папке tmp.
2. Заменить файлы папки sendmail на те, что предлагаю я.
3. Отключить Mercury Mail нахрен, достаточно эмулятора от Denwer'а.
4. Файл sendmail_daemon_start.exe добавить в автозагрузку (т.е. создать ярлык в папке Startup, чтобы он запускался при загрузке Windows). Это и есть почтовый эмулятор от Denwer'а, который принимает почту отправленную средствами PHP по 25 порту.
5. Заменить значение sendmail_path в php.ini на D:\xampp\sendmail\sendmail.exe -t -i (в зависимости от того, где находится файлы xampp на вашем компьютере). Здесь вы указываете путь к файлу, который обрабатывает файлы полученные почтовым эмулятором по 25 порту. В нашем случае, это программка Denwer'аб которая складывает почту отдельными файлами в папку tmp/!sendmail.
6. Чтобы не перезагружать компьютер, двойным щелчком запустите sendmail_daemon_start.exe

Другие решения этого же вопроса.
http://makegood.ru/tools/8/#3 — заменить sendmail скриптом php
http://meteorr.com/2009/05/19/alternativa-denvera-xampp/ — установить и Denwer и Xampp, и поменять путь к sendmail в php.ini

суббота, 28 ноября 2009 г.

Товар в корзине без перезагрузки страницы.

Не так давно я решился сделать перемещение товаров в корзину посредством технологии Ajax.
И Вы знаете, удобно! +)) Просто после перемещения товара в корзину, стоит сообщить клиенту, что это действие было совершено. Протестировать это дело можно на reifen-anton.de
Но параллельно возник еще один вопрос. Оказывается, клиенты боятся складывать товар в корзину, чтобы случайно не купить товар. +))) Как бы не смешно звучит, но это факт.

Ценовой фильтр. Часть 4.

Начало тут
Продолжение тут
Продолжение номер 2 тут

И так я добился того, что ценовой фильтр на основе jquery.trackbar стал более гибким. Теперь 80% ценового фильтра принадлежит товарам в ценовом диапазоне от 10 до 1000 евро, 15% - от 1000 до 2000 и всем остальным 5%. А идея решения пришла во сне. +)) Чувствую себя Менделеевым. Сделал я это простым конвертированием полученных значений трэкбара в значения, нужные мне.
По пунктам:
1) Я получаю ценовой диапазон товаров, например 0-50000;
2) Делю весь ценовой диапазон на три выше описанных диапазона в % - 0-40000(80%),40000-47500(15%),47500-50000(5%);
3) Приравниваю 1000 к 40000, 3000 к 47500;
4) В диапазоне 0-1000=0-40000 одна моя новая единица = 40 единицам трэкбара (40000/1000).В диапазоне 1000-3000=40000-47500 одна моя единица =  3,75 единицам трэкбара и т.д. На самом деле, думаю, можно таких диапазонов сделать множество.
5) При возвращении значений трэкбаром, я конвертирую их в сои единицы. При перезагрузке страницы, трэкбару передают единицы трэкбара, конвертированные из моих.

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

Я добил его! +)

Все просто! +)))

понедельник, 7 сентября 2009 г.

Ценовой фильтр. Часть 3.

Начало тут
Продолжение тут

Ничего из поставленных задач по ценовому фильтру не решил.
Только лишь добавил возможность таскать бегунки также за изображения цены. Как бы увеличил площадь кнопки бегунка. Видеть это можно на www.reifen-anton.de.
Ценовой фильтр сделан на основе trackbar'а но с некоторыми изменениями.

четверг, 3 сентября 2009 г.

Ценовой фильтр. Часть 2.

Начало вопроса тут.
Нашел еще один баг в ценовом фильтре. Если страницу оставить на минут 10, то куда-то пропадает реакция на изменение бегунков. Даже, не знаю, что может быть. +) Будем также смотреть и решать.

Продолжение тут.

среда, 2 сентября 2009 г.

Ценовой фильтр в интернет-магазинах

В нашем нынешнем проекте www.reifen-anton.de есть так называемый ценовой фильтр для отбора товаров по цене. Точнее, по диапазону цены. В общем и целом он удобен, потому что ты просто указываешь диапазон, перетаскивая левый и правый бегунки. Но, есть одно но! Он удобен в общем-то, но не до конца.
Основная масса товара находится в ценовом диапазоне от 20 до 500 евро. При этом самый дорогой продукт стоит 18000. Соответственно ценовой фильтр растягивается на промежуток от 10 до 18000 евро. Проблема заключается в том, что очень трудно сделать отбор с 60 до 200 евро на первой странице. Линейка ценового фильтра разбита на равные отрезки по 10 евро. Предположим, что размер ценового фильтра 700 пикселей. 18000 делим на 700 и получаем, что на каждый пиксель у нас 25 евро. Т.е. промежуток с 10 по 500 евро будет составлять 20 пикселей. 20 пикселей!!! Это основная масса товара, на оставшиеся 2% товара получается отведенными 680 пикселей. +))
Вот и вопрос, как разделить этот ценовой фильтр, чтобы как-то более логично использовать отведенное место под этот фильтр? Как облегчить отбор по цене, чтобы не воспитывать в клиенте снайпера? Решения я пока не нашел, но вообщем-то и не искал.

Ценовой фильтр. Часть 2.

Ключевые слова (labels,тэги) в интернет коммерции

В данной короткой статье хочу выразить свое удивление. +)

Сегодня везде широко принято вешать ярлыки (tags,labels,ключевые слова) на все, что попадает под руку. Кстати очень хорошая система. Интернет коммерция тоже не исключение, на товары сегодня тоже научились вешать ярлыки. Но если в других областях интернета ярлыки являются главным методом отбора, то интернет коммерция с этим делом тормозит.

В проекте www.reifen-anton.de я попытался реализовать систему ярлыков в полной мере. И скажу Вам, у меня это получилось. Проект разрабатывался (и продолжает разрабатываться) на основе бесплатной CMS osCommerce (правда от нее мало, что осталось на данный момент). По-умолчанию в ней была возможность добавлять опции каждому товару, например разные цвета или размеры. Я отказался от этой возможности и каждый товар с разными цветами и размерами сделал отдельными товарами.

Я создал таблицу ключевых слов, в которой хранятся названия всех размеров, цветов, производителей, моделей и т.д. Все ключевые слова (labels) разбил на группы (в данном случае): Производитель, Модель, Ширина покрышки, высота, радиус диска и т.д. А дальше просто к каждому товару через еще одну таблицу связей присоединил соответствующие ключевые слова или тэги. В таблице связей два столбца: Идентификационный номер товара и идентификационный номер ключевого слова (лэйбла,тэга).

Теперь отбор товаров происходит более подробно, понятно и быстро. От поиска можно почти отказаться. Мне кажется это более удобно, чем гадать, как же администратор магазина назвал тот или иной товар. +)
Кстати, о поиске по тем же ключевым словам я расскажу как-нибудь обязательно, когда буду очередной раз его пытаться реализовать. 6 попыток уже было, но все решения оказались достаточно ресурсоемкими, наш сервер не потянул. Но, скажу я Вам, 3 из 6 решений были на 99% процентов верными, потому что выдавали именно те товары, которые искал клиент.

Заключение: Так вот, мое удивление заключается в том, что я пока еще не видел чтобы ярлыки были ключевой системой отбора товаров в интернет магазинах. А зря, как я считаю, это удобно.