Help me, please!

кодеров на сайте не мало, и каждый в случае чего может найти ответ у великого гугла, но бывают вот такие моменты:
есть примерное условие, оптимизировал для проверки:
for n := 1 to nr do
      begin
        if (StrToDate(File.Line[n].Value) = dt1)
            or (StrToDate(File.Line[n].Value) > dt1) then
                begin
                edit1.text:= File.Line[n].Value;
                break;
                end;
      end;
dt1, берутся из DateTimePicker1
на выходе обрабатывает только условие "если больше",
если же у пикера указать дату на день раньше, то он коректно отобразит дату нужную
тоесть, к примеру в файле есть 3 строки с датами:
19.09.2010
24.09.2010
29.09.2010
при указании в datetimepicker'e дату 24.09.2010, выведится нашедшаяся дата "29.09.2010",
если же в пикере укажу 23.09.2010, то выведится "24.09.2010"
неврубаюсь в чем проблема %) вроде не первая процедура, да этого многократно использовалась проверка "если дата = дате то"
и коректно работало.
от того или я туплю потому что три часа ночи, или делфя гонит! ХЭЭЭЭЭЛЛПЪ!

Поделиться
+1
Виталий

activist21 октября 2013 23:58

t-rex, чушь какая-то

Виталий

activist21 октября 2013 23:59

A-lex, не вижу задачи, бытовуха какая-то.

Алексей

A-lex22 октября 2013 0:02

activist, ладно, не так выразился, не задача :) просто интересно кто как мыслит

Виталий

activist22 октября 2013 0:09

A-lex, мой вариант - твой первый вариант + переменную строковую меняем на массив, а в шаблоне циклом выводим. Мне с массивами удобней работать.

$this->add_style('style.css');
public function add_style($link) {

  if( is_array($link) == FALSE ) $this->_styles[] = $link;

  else

  foreach($link as $item) $this->add_style($item);

  return $this;
}

foreach($style in $_styles) echo HTML::style($style)."\n";

Татьяна

programistka22 октября 2013 11:32

A-lex, вот блин... а я вообще бы в этом вопросе не мыслила))) скопировала бы как у Активиста))) Smile

Алексей

A-lex22 октября 2013 14:06

а как насчет организации мультиязычности на сайте?

при активации базового контролера, кушаем параметр языка из куков, если нет, то из параметров запроса, если нет, то выствляем язык по умолчанию

у меня на ум приходило два варианта:

Первый вариант:

1. Таблица с языками

2. Таблица с материалами + id языка

минус, сайт будет многоязычным, но без зеркала

Второй вариант (так я использовал до недавнего времени):

1. Таблица с материалами, а в ней поля аля header_kz, header_ru, header_en/

При выборке в модели указываем поля 'header_'.$this->lang, 'text_'.$this->lang,

очень удобно, если знаешь количество языков (а у нас оно равно трём Smile).

Третий вариант (начал использовать недавно, т.к. встала задача реализации зеркальной многоязычности с неизвестным числом языков.)

1. Таблица с языками

2. Таблица с материалами

3. Таблица с текстом для материала + id матариала + id языка.

в итоге получаем расширяемость языков до любого количества,

получаем выборку по айдишнику материала, который будет у всех иноязычных общий + патаметр языка.

А кто какие алгоритмы еще придумывал?

Виталий

activist22 октября 2013 21:58

A-lex, это секретные алгоритмы! Все варианты имеют право на жизнь. Второй вариант не нравится, именно из-за дублирования колонок на всех языках. Третий вариант похож на реализацию мультиязычности в Doctrine. И первый, и третий вариант могут обойтись без таблицы с языками. Просто массив держим где-нибудь в доступном месте:

$languages = array(

1=>array('name'=>'Казакша', 'code'=>'kz'),

2=>array('name'=>'Русский','code'=>'ru'), 

3=>array('name'=>'English', 'code'=>'en')

);

Алексей

A-lex23 октября 2013 0:19

activist, держу таблицу, что бы можно было в любой момент без правки файла с перезаливом на сервер из админки новый язык добавить

Виталий

activist23 октября 2013 12:06

A-lex, а PHP уже с файловой системой не работает? :)

Алексей

A-lex23 октября 2013 12:37

activist, работает, а есть ли смысл? мне кажется один запрос на получение языков в БД роли не сыграет, не?

Виталий

activist23 октября 2013 12:59

A-lex, всё зависит от рук

Алексей

A-lex 7 ноября 2013 11:48

господа СЕО-шники, если таковые имеются :))) ну ка, скажите ка, как уменьшить "показатель отказов" у одностраничных сайтов? Smile

Екатерина

Екатерина Лебедь 7 ноября 2013 12:25

A-lex, одностраничные сайты ведь и не сайты вовсе, а страницы, направленные на сбор контактных данных. А раз так, значит, должны обладать всеми дескрипторами (УТП, форма захвата, тригеры доверия в виде отзывов, сертификатов, наград и т.д) - нас так учили. Из всех одностраничников, которые есть у меня, только 1 продвигается неплохо еще и по СЕО. И то из-за того, что текста много в нем))) На звание программиста не претендую. Всего сайтов сделала 10. (1 на WP, остальные - это одностраничники на конструкторе. Конверсия сайтов от 8 до 34 %. Дизайн - никакой)

Алексей

A-lex 7 ноября 2013 12:47

Екатерина Лебедь, нет, засада в том, что он динамический :) т.е. на главной странице только контакты и форма поиска, а информация выдается аяксом при поиске. Я думаю это функциональней и быстрей, нежели клепать по странице на каждый запрос.

с одоной стороны мне на поисковики пофиг, даже каталог не делал, соответсвенно нечего не индексируется, с другой стороны осеннама интересно на будущее про "показатель отказов" и как он влияет на выдачу, спорные моменты гуглятся)))

Екатерина

Екатерина Лебедь 7 ноября 2013 12:51

A-lex, А можно ссылку (хотя бы в личку)

Тыщь

Тыщь 7 ноября 2013 17:11

A-lex, никак не уменьшить, ибо по определению показатель отказов будет равен 100% :) Отслеживай события, а переходы тебе нафиг не нужны

Алексей

A-lex 7 ноября 2013 17:53

Тыщь, 75% если быть более точным, по крайней мере у меня) так что думаю это не совсем объективный расчет в аналитике гугла

а на другом 68,2%

Тыщь

Тыщь 7 ноября 2013 17:56

A-lex, странные показатели.. должны быть 100% минус роботы

Алексей

A-lex 7 ноября 2013 17:58

Тыщь, я тоже так считаю, ибо цитирую:

Показатель отказов – это процент посещений, в ходе которых было открыто не более одной страницы, т. е. при которых посетитель покидает сайт со страницы входа.

но вот где-то что-то не то, получается и показатель отказов и не 100% и не 0% Smile

Алексей

A-lex16 ноября 2013 5:05

вот что нарыл у гугла про отслеживание действий пользователей

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

для новой версии Universal Analytics (analytics.js) я поставил код отслеживания следующий (можно вешать, например на успешное получение ajax запроса или просто клике по ссылке):

ga('send', 'pageview', {'page': 'ссылка на ajax страницу', 'title': 'название страницы'});

а для старой версии аналитики (ga.js), можно использовать код:

_gaq.push(['_trackPageview', 'ссылка на страницу']);

за трех часовой тест, несмотря что время уже пять утра, и чего это людям не спится))) показатель отказов упал до 66% (в последнии пару дней, при приросте посетителей он поднялся до 89%), и ajax страницы стали отображаться в статистике сайта.

Посмотрим на аналитику завтра

Алексей

A-lex 6 декабря 2013 4:25

господа веб-программисты, а так же линуксойды, а так же их родители

бида приключилась, суть. Есть домен, в панели управления можно выбрать поддомен и работу этого поддомена:

1. поставить запись A

2. поставить запись CNAME

3. редирект на заданный url

и всё отлично работало, пока не пришлось подключить поддомен на этом же сервере. Как выяснилось, господин apache в приоритете сначала пишет в конфиге основной домен и его алиасы (который естественно является *, т.к. поддомены определяются динамически), а только потом конфигурацию поддомена.

Вопрос, можно ли заставить апач, писать конфу поддомена раньше конфы основного домена? стоит ispmanager в котором как я только не извращался, думал может если поставить автоматические поддомены, то не найдя папку он пойдет на основной сайт, но нет.

А засада в том, что основной сайт работает по принципу, пришли по адресу поддомен.сайт.ру.

.htaccess меняет ссылку на сайт.ру/контроллер/поддомен, а скрипт уже определяет куда отправить пользователя.

И в случае если юзать левый сервак, для поддомена, то работает всё как часики. А если указать запись  А с адресом нашего сервера, где лежит основной сайт, и уже создан конфиг для поддомена. То из-за того, что в конфиге апача, основной домен идет первым, то до конфига поддомена не доходит. В следстии имеем бесконечный цикл:

поддомен.сайт.ру -> сайт.ру/контроллер/поддомен -> поддомен.сайт.ру -> ...цикл

поддомены создаются автоматически, потому  совет каждый раз лезть ручками в конфиг апача не вариант. нагуглить приотитетность не могу Smile

пы.сы. и да, я из Владивостока Smile

Алексей

A-lex 6 декабря 2013 12:44

ап, если кто не видел :)

самое весело, вчера только написал пост, отвалилась к епеням вся сеть дата центра, где расположен сервер. А у меня настройки сбиты %)

проблема на том же месте, хелапими мии Smile

ion

ЖеньШень 6 декабря 2013 12:46

капец у тебя проблемы не класические

Алексей

A-lex 6 декабря 2013 13:19

ЖеньШень, ха! Были бы классические, уже бы нагуглил Smile

по сути, мне нужно узнать, можно ли настроить апач таким образом, что бы

1. создаваемые поддомены записывались выше основного домена

или

2. при отсутсвии директории при конфиге VirtualDocumentRoot /home/username/data/www/%0 он ссылался на параметр DocumentRoot, - это менее рекомендуемый вариант, ибо тогда не смогу в панеле созавать юзверей и ограничивать их по тарифам

20-ka

dwadzatka 6 декабря 2013 18:36

Малость не понял, при чем тут бесконечный цикл? Он тупо не находит второй хост. Вот тут глянь расписано, твоя проблема? http://webhamster.ru/site/page/index/articles/comp/9

Алексей

A-lex12 декабря 2013 22:44

dwadzatka, спасибо, сейчас почитаю. Только заметил пост %)

Алексей

A-lex12 декабря 2013 22:54

Тут другая проблема, так как я очень самоучка, возникла проблема, незнаю как правильно обработать  элемент плагином. Может я это не правильно называю, потому немогу нагулить решение, или найти на офф.странице функций JQuery. Беру конкретно мой пример, мне надо, что бы на добавление динамического элемента, он обрабатывался.

Суть, есть такое действие:

$(document).ready(function() {

   $('.ajax-edit').editable();

});

есть еще одна функция, по клику на которую добавляется строка в таблицу:

$('#add-price').click(function(){
            $.ajax({
                type: "POST",
                dataType: 'html',
                url: $(this).data('url'),
                data: 'good_id='+'<?= $item->id ?>',                
                success: function(html){                
                    $('#price-table-body').append(html);
                },
                error: function() {
                    alert('<?= __('Ошибка! Не возможно cоздать цену') ?>');
                }            
            });
            return false;
});

в этой строке есть пара ссылок, с классом ajax-edit, которые надо  так же обработать: $('.ajax-edit').editable();

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

Как бы с действиями для динамически созданныэ элементов, аля клик или наведение курсора на элемент проблем нет, через .on('click') например. А вот с активным случаем столкнулся в первый раз, и незнаю как правильно загуглить документацию.

Алексей

A-lex12 декабря 2013 22:57

если кому интересно что я пытаюсь сделать со ссылками, линк на плагин. Классная штука, можно лишние виды не рисовать для отдельно взятого элемента, а записи прямо сходу в списке менять.

Просто сейчас встала проблема добавить новую запись в реалтайме

Алексей

A-lex12 декабря 2013 23:05

всё, я баран))) опять стоило только описать, как проблему решил, чтойта логика не включалась %) засунул привязки в функцию и вызываю её повторно после того как элемент добавился.

Если это костыльный вариант. прошу подсказать как правильно :)

Dreamer

Dreamer13 декабря 2013 1:23

A-lex, я же тебе говорила как сделать привязку.

Алексей

A-lex13 декабря 2013 1:24

Dreamer, берёшь и привязываешь?! Smile

Dreamer

Dreamer13 декабря 2013 1:25

Нет. Привязку надо делать качественно. Вот как её делать.

Виталий

activist13 декабря 2013 9:16

A-lex, нормальный метод. Главное, чтобы на предыдущие обработанные элементы повторно ничего не вешалось, а если всё робит, то значит норм.

Алексей

A-lex16 декабря 2013 0:25

dwadzatka, прочитал, нет не то. Виртуальные хосты отрабатывают. Как сделать так, что бы если папка subdomain.site.ru отсутсвует на сервере, он редиректил открывал на поддомене главный сайт site.ru.  Т.е.

в браузе в строке остается  subdomain.site.ru, а открывается индекс site.ru

Алексей

A-lex16 декабря 2013 5:51

вобщеи решил остановиться на втором варианте,т.е. у меня создан домен, и автоподдомены:

<VirtualHost ip:80 >

ServerName site.ru

DocumentRoot /var/.../www/site.ru

ServerAlias *.site.ru, www.site.ru

VirtualDocumetnRoot /var/.../www/%0

</VirtualHost>

т.е. есть папка www/site.ru с основными документами сайта,

всё остальные редиректиться на /www/поддомен.site.ru

итого мне ребуется, на уровне апача проверять, если ли такой каталог %0 в папке www/ если нету редиректить на http://site.ru/redirect/%1

сейчас на несуществующие каталоги тупо 404 ошибка выпадает, а мне нужен редирект, т.к. на поддоменах "безотходное" производство

Алексей

A-lex16 декабря 2013 16:11

аааа!!! Сделал! Совместными усилиями с господином Тыщ'ём пришли к такому правилу

взял рабочее правило редиректа с основного  домена:

RewriteCond %{HTTP_HOST} ^(.*)\.site\.kz$ [NC]
RewriteRule ^(.*)$ http://site.kz/redirect/%1 [L]

и добавили еще правило

RewriteCond %{HTTP_HOST} ^(.*)\.site\.kz$ [NC]

RewriteCond /var/www/sitekz/data/www/%0 !-d
RewriteRule ^(.*)$ http://site.kz/redirect/%1http://site.kz/redirect/%1ере нет, он выдает что нет такого сайта на сервере, если есть, но нет директории редиректит. если есть, то идёт в папку с поддоменом

полный конфиг апача, навсякий случай:

<VirtualHost server_ip:80 >
    ServerName site.kz
    CustomLog /var/www/httpd-logs/site.kz.access.log combined
    DocumentRoot /var/www/sitekz/data/www/site.kz
    ErrorLog /var/www/httpd-logs/site.kz.error.log
    ServerAdmin admin@site.kz
    ServerAlias *.site.kz www.site.kz
    SuexecUserGroup sitekz sitekz
    AddType application/x-httpd-php .php .php3 .php4 .php5 .phtml
    AddType application/x-httpd-php-source .phps
    php_admin_value open_basedir "/var/www/sitekz/data:."
    php_admin_value sendmail_path "/usr/sbin/sendmail -t -i -f admin@site.kz"
    php_admin_value upload_tmp_dir "/var/www/sitekz/data/mod-tmp"
    php_admin_value session.save_path "/var/www/sitekz/data/mod-tmp"
    VirtualDocumentRoot /var/www/sitekz/data/www/%0
RewriteEngine On
RewriteCond %{HTTP_HOST} ^(.*)\.site\.kz$ [NC]
RewriteCond /var/www/sitekz/data/www/%0 !-d
RewriteRule ^(.*)$ http://site.kz/redirect/%1

http://site.kz/redirect/%1
Алексей

A-lex16 декабря 2013 16:14

чойта павоша пообрезал всё сообщение %)

вобщем суть, неделя гуглежа, а оказалось почти сразу всё правильно делал, вот что значит когда знаешь как оно работает только по собвсенному опыту, без знания глубоких познаний в регулярках :)

Алексей

A-lex16 декабря 2013 16:17

пытался поправить еще хуже сделал))) вобщем кому подобная беда понадобиться, стучитель в личку, а то  павошка обрубил сообщение и ссылки навтыкал зачем-то с дублированием, скушав при этом предложения Smile

Алексей

A-lex 2 марта 2014 14:11

господа, подскажите нубу) раньше мне если и приходилось загружать файлы, то либо кучей, либо по одному.

Сейчас встал вопрос, сделать загрузку двух изображений первая для иконки. вторая для контента (в теории у меня там подрублен визвиг можно к нему прицепить аплоадер и оформлять картинку через него, но я знаю что будут как попало делать. А я хотел бы что бы выглядело одинаково везде.)

так вот, когда цепляю на форме два <input name="picture" type="file" /> и <input name="picture2" type="file" />

то загружается только первое изображение, и то, если я заполняю оба инпута. А второй инпут как будто бы вообще пустой. Пытался дебагом посмотреть содержимое массива $_FILES, но он только показывает что это массив Smile

так вот я и не пойму, то ли я в своём коде где-то туплю, то ли действительно нельзя такое вытворять, хотя я помню что встречал такую петрушку типа загрузка большого изображения и загрузка миниатюры

Прямой эфир
Через Пакистан, Индию и Непал: как велопутешественник из Павлодара покорил Эверест
Довольно-таки всё путано описано, с синего на тёплое постоянно перепрыгиваем. А вот это вообще шедевр: - Самая высокая…
#wlad1 час назад
В Павлодаре горожане и спортсмены не поделили горку в Зеленой роще
Действительно, место отдыха было для всех. Административный ресурс замечательно работает, но тут непродуманно. Хоть на…
#Somik21 час назад
Строительство 4 многоэтажек намерены начать в микрорайоне "Достык" в Павлодаре
Планы грандиозные. Видимо государство подумало об этом. Теперь - "Aq Jol", чтобы реализация не подвела
#Somik21 час назад
В Павлодаре начали строить новый завод
Жаль подробностей нет. Но стратегия видна, думает кто-то на перспективу и это замечательно
#Somik21 час назад
Как диабетикам получить социальные выплаты в Павлодаре
Инсулинозависимый диабет (сахарный диабет 1 типа). Термин «инсулинопотребный» обычно относится к сахарному диабету 2…
#Somik23 часа назад
Сокращение количества бродячих собак привело к росту числа лис в Павлодаре
Сокращение количества бродячих собак привело к росту числа лис в Павлодаре - Любой вид, когда он живёт где-то, он…
#wlad1 месяц назад
Нового прокурора представили в Павлодаре
А вы, друзья, как ни садитесь ... .
#wlad1 месяц назад
"Куртка за 1,2 млн тенге": аким Павлодарской области объяснил, откуда в его гардеробе дорогие вещи
На воре и шапка горит. На акиме любое пальто хорошо сидит.
#wlad1 месяц назад
Откуда в Павлодарской области появился ВИЧ
По путям передачи в этом году лидирует половые гетеро- и гомосексуальные – 67,5%, на втором месте – при введении…
#wlad1 месяц назад
Павлодарский нефтехимический завод решено передать в частные руки
КГП на ПХВ «ERTIS SU PVL». знать бы что сиё значит, может и прикупил бы )))).
#wlad1 месяц назад
Зловонные стоки протекли в Семее и попали в Иртыш, откуда берут воду Экибастуз и Павлодар
Зловонные стоки протекли в Семее и попали в Иртыш, откуда берут воду Экибастуз и Павлодар И Караганда. А вообще,…
#wlad1 месяц назад
Выделить стену для мозайки попросила жительница Павлодара у акима города
Выделить стену для моза й ки ... . Павон, .
#wlad1 месяц назад
На 98-ом году жизни не стало легендарного павлодарского тренера Рафаэля Вахитова
Тяжелая продуктивная жизнь. Спасибо автору за короткую биографию, за знакомство. Светлой памяти
#Somik1 месяц назад
В павлодарском университете открыли центр китайского языка
Нам тоже предлагают учить, но страшно начинать в 40 и необходимости нет. Жена говорит с китайцами на английском...
#Somik1 месяц назад
Павлодарец сделал предложение своей девушке на матче "Иртыша"
Хорошая история. Доброго пути, брачующимся
#Somik1 месяц назад
Голый мужчина бегал около павлодарской школы
Периодически машут мужчины и это ужасно. Есть же нудисткие пляжи, общественные бани... В ноябре месяце очень странное…
#Somik1 месяц назад
После прокурорской проверки павлодарцам выплатили долги по зарплате
Очень большое предприятие. Кто это у нас такой большой? КЭЗ?
#Somik1 месяц назад
На первые домашние матчи сезона приглашает павлодарских болельщиков хоккейный клуб «ERTIS»
Вроде приглашают и тут же пишут 5 очков из 42-х у лидера. Мы вас предупреждали. Разве так зовут в гости?
#Somik1 месяц назад
Почему в Павлодаре не работает единственный полноценный ледовый дворец
Я обязательно схожу поболеть через неделю. Но "Но для хоккеистов «Иртыша» это слабое утешение, им уже засчитаны четыре…
#Somik1 месяц назад
Жители частного сектора Павлодара могут получить соцвыплаты для покупки угля
wlad, он же генерал Махмет Дюсенович Дюсенов. Сокращение конечно многозначительное, но отечество знает своих героев или…
#Somik1 месяц назад