• Каким образом реализовать удаление записи из БД?

    @game802 Автор вопроса
    Реализовал след. образом:
    PHP:
    // mysql files array
    $file_bd_items = array();
    $bd_files_name = mysqli_query($connect, "SELECT * FROM files");
    while($row = mysqli_fetch_array($bd_files_name)) {
    	$file_bd_items[] = $row['filename'];
    }
    
    // server files array
    $file_server_items = array();
    foreach (scandir(ATTACHMENT_DIRECTORY) as $filename) {
    	$filepath = ATTACHMENT_DIRECTORY.$filename;
    
    	if (!is_file($filepath)) {
    		continue;
    	}
    
    	$file_server_items[] = $filename;
    }
    
    $result = array_values(array_diff($file_bd_items, $file_server_items));
    $result_lenght = count($result);
    
    for ($i = 0; $i < $result_lenght; $i++) {
    	$result_string_filename = $result[$i];
    	$bd_files_name = mysqli_query($connect, "DELETE FROM files WHERE filename in ('".$result_string_filename."');");
    }

    Cron:
    find ~/sitename.ru/public_html/mailfile -type f -mtime +15 -print0 | xargs -0 rm -f
    Ответ написан
    Комментировать
  • Как добавить такую кнопку?

    @game802
    <ul class="nav nav-tabs">
    	<li class="active"><a href="#tab-description" data-toggle="tab"><?php echo $tab_description; ?></a></li>
    	<?php if ($attribute_groups) { ?>
    	<li><a href="#tab-specification" data-toggle="tab"><?php echo $tab_attribute; ?></a></li>
    	<?php } ?>
    	<?php if ($review_status) { ?>
    	<li><a href="#tab-review" data-toggle="tab"><?php echo $tab_review; ?></a></li>
    	<?php } ?>
    	<?php if ($тут_имя_переменной) { ?>
    	<li><a href="#tab-название-таба" data-toggle="tab"><?php echo $тут_имя_переменной; ?></a></li>
    	<?php } ?>
    </ul>
    Ответ написан
    1 комментарий
  • Почему позиции сайта могу расти стабильно в яндекс, но не в google?

    @game802
    1) Поведенческие факторы, какие они? Процент отказа не должен быть слишком высоким
    2) Уходите в будущее, вместе с LSI
    3) Покупаете ли Вы ссылки?
    4) Составляйте MindMap для более четкого и ясного понимания распределения веса страниц
    5) Детальнее прорабатывайте description, пишите туда краткое описание содержания страницы, а не ключи.
    6) На странице в h1 указана картинка...? Используйте грамотную гипертекстовую разметку, для более ясной подачи поисковому роботу материала.
    7) Желательно указывать title к тегу img
    8) Объединяйте скрипты в одно целое, для меньшего кол-во обращений к серверу
    9) Минифицируйте js и css файлы
    10) CSS располагайте в head, JS внизу, перед закрывающем тегом body
    11) Прорабатывайте title, делайте акцент на НЧ, СЧ, - СК, НК
    12) Слушайтесь валидатора, он фигни не скажет
    13) Меню очень плохо адаптировано под моб. устройства
    14) Не везде указаны alt к картинкам
    И куча другого...
    Суть в том, что в конец 2016 года, практически невозможно повлиять на поисковую выдачу (методики ранжирования сайтов все лучше и лучше). Поисковики чувствуют seo оптимизацию и даже глубокий рерайт. Самый верный и правильный путь - развивать сайт, писать уникальный контент ДЛЯ ЛЮДЕЙ, а НЕ ДЛЯ РОБОТОВ. Ничего человеческого в Вашем сайте я не увидел, кроме того, все h, текста и все остальное оптимизировано под робота, а не сделано для ЧЕЛОВЕКА. Будьте осторожнее с этим иначе, такими темпами, можно улететь в бан. Пользуйтесь советом, под номером 2 и 6. Удачи
    Ответ написан
    1 комментарий
  • Как правильно сверстать иконки?

    @game802
    Ответ написан
    Комментировать
  • Эффект смены изображение типа ручной шторки?

    @game802
    Вот какой плагин используют для создания такого эффекта: twentytwenty
    Ответ написан
    1 комментарий
  • В чем может быть проблема считывания файла mb_stripos'ом?

    @game802 Автор вопроса
    проблема не с кодировкой, а с !== false
    Было:
    if (mb_stripos(string $read_subject, 'новинки')) return 1;

    Стало:
    if (mb_stripos(string $read_subject, 'новинки') !== false) return 1;

    Алексей
    mb_stripos как и stripos возвращает значение начиная с "нуля"

    Спасибо всем за помощь!
    Ответ написан
    Комментировать
  • Куда сообщить о баге в google webstore?

    @game802 Автор вопроса
    Google Feedback. Ответ оказался слишком простым...
    Ответ написан
    Комментировать
  • Save Attachments Server with IMAP and PHP.?

    @game802 Автор вопроса
    А вот и решение:
    foreach ($attachments as $key => $attachment) {
        $name = $attachment['name'];
        $contents = $attachment['attachment'];
        
        $resp = imap_utf8(trim($name));
    
        if(preg_match("/=\?/", $resp))
            $resp = iconv_mime_decode($name, ICONV_MIME_DECODE_CONTINUE_ON_ERROR, "ISO-8859-15");
    
        if(json_encode($resp) == 'null')
            $resp = utf8_encode($resp);
    
        file_put_contents($resp, $contents);
    }
    Ответ написан
    Комментировать
  • Ваши мысли по реализации подобной светомузыки?

    @game802
    Привет! Вот пост с пикабу. Она рассказывает о реализации идеи именно этой елки на видео.
    f8056665b8804ffbaf634990c97704f6.png
    И обрати внимание на ответ автора этой елки
    Ответ написан
    3 комментария
  • Существует ли аналог R-Keeper?

    @game802 Автор вопроса
    остановился на NORD POS. Open Source проект, полностью бесплатный. Может быть кому пригодится!
    Ответ написан
    Комментировать
  • Как в php вывести файлы?

    @game802 Автор вопроса
    Прошу прощения, догадался сразу
    $dir  = 'mailfile/';
    $files = scandir($dir);
    foreach ($files as $file) {
        echo '<a href="mailfile/'.$file .'">test</a><br>';
    }
    Ответ написан
    Комментировать
  • Как можно на сайте поставить защиту от копирования html?

    @game802
    сбрось стили на такие теги как: b, strong, em, i - чтобы визуально все выглядело так, как будто бы все обернуто в тег p.
    У тебя идет текст, к примеру:
    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Provident, nobis.</p>

    После:
    <p><b>Lorem</b> ipsum <i>dolor</i> <strong>sit</strong> <b>amet</b>, <em>consectetur adipisicing<em> <b>elit</b>. <em>Provident<em>, nobis.</p>

    Так как тег p не pre, можно нагенерировать пробелы и табуляции:
    <p><b>Lorem    </b>        ipsum <i>    dolor    </i> <strong>      sit</strong>    <b>         amet</b>, <em>        consectetur      adipisicing<em>       <b>elit      </b>. <em>       Provident        <em>,      nobis.        </p>

    Вы понимаете к чему приводят такие действия, но защитит ваш текст на ура.
    Далее: (тут уже без знаний регулярок не обойтись)
    <p><b>Lorem    </b>        ipsum <i>    dolor    </i> <strong>      sit</strong></p>   <p><b>         amet</b></p>, <p><em>        consectetur      adipisicing<em>       <b>elit      </b>. <em>       Provident        <em>,      nobis.        </p>

    CSS код делайте полностью не читабельным (то, что будите отправлять на билд)
    Обфускация JS кода
    Генерация html страницы с помощью JS кода.
    И великолепный бонус по данной теме: Тебе сюда
    Ответ написан
    Комментировать
  • Как добавить button атрибут disabled?

    @game802 Автор вопроса
    Оказалось.... все очень просто!
    $(".wicartnum_downbutton").click( function() {
    	var id = $(this).attr("for"),
    		value_id = $("#winum_" + id).val();
    		console.log(id + " " + value_id)
    	if (value_id == 0) {
    		$(".for_" + id).prop("disabled",true);
    	} else {
    		$(".for_" + id).prop("disabled",false);
    	}
    });
    Ответ написан
  • Как задать размер блока scroll jQuery?

    @game802 Автор вопроса
    $(document).ready(function(){
        var markerPosRew1 = $('#rew-1').offset().top;
        var markerPosRew3 = $('#rew-3').offset().top;
        if ( markerPosRew1 > 400  || markerPosRew1 < -300 && markerPosRew3 > 400 || markerPosRew3 < -300) { 
            $(window).scroll(function(){
                $(".mbBalloonOverlay").fadeOut(500), $(".mbBalloon").fadeOut(500)
                $(".mbBalloonOverlay").fadeOut(500), $(".mbBalloon").fadeOut(500)
            })
        }  
    })

    Так тоже не работает... Как быть?
    Ответ написан
    Комментировать
  • Как отключить мигание курсора?

    @game802 Автор вопроса
    Отключил мигание курсора через реестр, вот решение:
    С помощью редактора реестра измените значение параметра для значения CursorBlinkRate в следующем разделе реестра:
    HKEY_CURRENT_USER\Control Panel\Desktop
    Примечание: Если значение CursorBlinkRate не существует, добавьте новое строковое значение.
    После изменения значения CursorBlinkRate в реестре необходимо перезагрузить компьютер.

    Если уменьшить значение данных номер (значение по умолчанию — 500) для значения CursorBlinkRate курсор мигает быстрее. Если используется большее значение данных курсор мигает медленнее.

    Например значение параметра 1000 заставляет курсор мигать примерно один раз в секунду. Аналогично Если используется значение 2000 курсор мигает примерно один раз каждые две секунды. Если не хотите, чтобы курсор мигает, используйте значение -1.
    Источник
    Ответ написан