• Как получать точный fingerprint браузера?

    @michellie
    нужна система FingerprintJS / IP / username, отдельно нельзя полагаться на фингерпринт
    Ответ написан
    Комментировать
  • Работа с огромным количеством прокси?

    @michellie Автор вопроса
    В общем все решилось так что поставил отдельный сервер для маршрутизации, получились персональные прокси ипв6 подсетей с префиксом /32 по стоимости чуть больше 0.3 р./день.

    Спасибо, больше не актуально.
    Ответ написан
    Комментировать
  • Как правильно сделать logout?

    @michellie Автор вопроса
    У вас там для каждой страницы свои куки генерятся?

    Нет, вот пример проблемы:

    сессия и куки записываются на всех страницах
    сайт/....

    сессия и куки удаляются на страницах при переходе с
    сайт/....

    сессия и куки НЕ удаляются на страницах при переходе с
    сайт/.../... и далее

    если удалить куки и сессию с
    сайт/....
    и зайти на
    сайт/.../... и далее
    сессия и куки снова появятся на всех страницах
    сайт/.... и далее
    Ответ написан
    Комментировать
  • Как сделать чтобы не пропадали иконки svg?

    @michellie Автор вопроса
    проблема решилась с помощью пары строк в файде .htaccess
    AddType image/svg+xml svg
    AddEncoding gzip svgz
    Ответ написан
    Комментировать
  • Как обрезать изображение в Imagic?

    @michellie Автор вопроса
    получилось решить через GD, если кто будет искать..

    $destination = $upload_dir .'/' . time() . $_FILES['file']['name'][$i];
    $thumb_width = 330;
    $thumb_height = 467;
    $s=GetImageSize($destination) or exit;
    $width = $s[0];
    $height = $s[1];
    
    $original_aspect = $width / $height;
    $thumb_aspect = $thumb_width / $thumb_height;
    
    if ( $original_aspect >= $thumb_aspect )
    {
       // If image is wider than thumbnail (in aspect ratio sense)
       $new_height = $thumb_height;
       $new_width = $width / ($height / $thumb_height);
    }
    else
    {
       // If the thumbnail is wider than the image
       $new_width = $thumb_width;
       $new_height = $height / ($width / $thumb_width);
    }
    
    $thumb = imagecreatetruecolor( $thumb_width, $thumb_height );
    $image = ImageCreateFromjpeg($destination);
    // Resize and crop
    imagecopyresampled($thumb,
                       $image,
                       0 - ($new_width - $thumb_width) / 2, // Center the image horizontally
                       0 - ($new_height - $thumb_height) / 2, // Center the image vertically
                       0, 0,
                       $new_width, $new_height,
                       $width, $height);
    $date=time();
    imagejpeg($thumb,$upload_dir90.$date.$_FILES['file']['name'][$i],50);
    Ответ написан
    Комментировать
  • Как найти порядковый номер в бд?

    @michellie Автор вопроса
    В общем, самый жизнеспособный способ оказался через таблицу с позициями , транзакции и крон.
    include 'bdconnect.php';
    mysqli_begin_transaction($link, MYSQLI_TRANS_START_READ_WRITE);
    mysqli_query($link,"TRUNCATE TABLE top_pos;");
    mysqli_query($link,"SET @position_number := 0;");
    mysqli_query($link,"SET @rating_id := '';");
    mysqli_query($link,"INSERT INTO
      top_pos (element_id, `position`, rating_id)
    SELECT
      id_elem,
      IF(@rating_id = e.id_top, @position_number := @position_number + 1, @position_number := 1) AS position_number,
      @rating_id := id_top AS rating_id
    FROM
      top_elements AS e
    ORDER BY
      e.id_top,
      e.rating DESC,
      e.id_elem;");
    mysqli_query($link,"SET @position_number := 0;");
    mysqli_query($link,"SET @rating_id := '';");
    mysqli_query($link,"UPDATE
      top_elements AS e
      INNER JOIN
      (SELECT
        e.id_elem,
        IF(@rating_id = e.id_top, @position_number := @position_number + 1, @position_number := 1) AS position_number,
        @rating_id := id_top AS rating_id
      FROM
        top_elements AS e
      ORDER BY
        e.id_top,
        e.rating DESC,
        e.id_elem) AS t ON t.id_elem = e.id_elem
    SET
      e.position = t.position_number;");
    mysqli_commit($link);
    mysqli_close($link);
    Ответ написан
    Комментировать
  • Что не так, все работает но идет warning?

    @michellie Автор вопроса
    если кто то столкнется с этой проблемой, все решается очень просто:
    if ($row = mysql_fetch_assoc($otvet)) {
    while {}
    }
    else{}
    Ответ написан
  • Как сверстать 3 колонки для планшетов из 4 колонок для пк?

    @michellie
    Засовываем Div'ы в Div с заданным размером
    @media (max-width 840px) {
    .стиль {
    width: calc(100%/3)
    }
    }
    @media (min-width 840px) {
    .стиль {
    width: calc(100%/4)
    }
    }
    Ответ написан