• Как убрать отступы между div?

    Symphony
    @Symphony Куратор тега CSS
    * {
        margin: 0;
    }

    или в вашем случае
    img {
        display: block;
    }
    h1,h2,h3,h4,h5,h6 {
        margin: 0;
    }
    Ответ написан
    9 комментариев
  • Как при закрытии окна браузера сбрасывать значение в переменной?

    1. Данные массива хранить в куках время жизни которых сессия php.net/manual/en/function.setcookie.php
    2. Хранить данные в массиве $_SESSION php.net/manual/en/reserved.variables.session.php

    Каждый раз проверять на наличие, если нет (В куках, если выбрали куки, в сессии если выбрали _SESSION) - формировать значения по умолчанию, и тут же их сохранять в соответствующее место. Пользователю на каждую страницу выдавать только из этого места.
    Ответ написан
    Комментировать
  • Как при закрытии окна браузера сбрасывать значение в переменной?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Несмотря на неграмотный заголовок (в момнт, когда пользователь закрывает браузер, никаких переменных уже нету, да и сам РНР скрипт давно умер), сама задача решается очень просто - стандартный механизм сессий идеально для неё подходит.

    Но мне бы такое поведение показалось неудобным.
    Было бы лучше, если бы введенные пользователем данные записывались в БД, и выводились при следующем заходе на сайт. А сборсить их всегда можно отдельной кнопкой
    Ответ написан
    1 комментарий
  • Как при закрытии окна браузера сбрасывать значение в переменной?

    dzhem911
    @dzhem911
    I know H.T.M.L. ;)
    Может попробовать через сессию
    Ответ написан
    Комментировать
  • Как определить наиболее точно адрес по ip?

    Whois сервисы. Их очень много. В linux консольная утилита whois.

    whois cli
    Last login: Tue Jul 22 00:06:53 2014 from 192.168.0.51
    whpgin@Server-Enginex:~$ whois 78.25.122.213
    % This is the RIPE Database query service.
    % The objects are in RPSL format.
    %
    % The RIPE Database is subject to Terms and Conditions.
    % See http://www.ripe.net/db/support/db-terms-conditions.pdf
    
    % Note: this output has been filtered.
    %       To receive output for a database update, use the "-B" flag.
    
    % Information related to '78.25.120.0 - 78.25.123.255'
    
    % Abuse contact for '78.25.120.0 - 78.25.123.255' is 'abuse-mailbox@megafon.ru'
    
    inetnum:        78.25.120.0 - 78.25.123.255
    netname:        MF-NWGSM
    descr:          North-West Branch of OJSC MegaFon Network
    country:        RU
    admin-c:        NMNW-RIPE
    tech-c:         NMNW-RIPE
    status:         ASSIGNED PA
    mnt-by:         MNT-MF-NWGSM
    mnt-by:         MEGAFON-RIPE-MNT
    mnt-lower:      MNT-MF-NWGSM
    mnt-domains:    MNT-MF-NWGSM
    mnt-routes:     MNT-MF-NWGSM
    geoloc:         59.91 30.491
    source:         RIPE # Filtered
    
    role:           North-West Branch of OJSC MegaFon Internet Center
    address:        10, Karavannaya street
    address:        Saint-Petersburg, Russia, 191011
    admin-c:        MYK17-RIPE
    admin-c:        GMV-RIPE
    tech-c:         MYK17-RIPE
    tech-c:         GMV-RIPE
    nic-hdl:        NMNW-RIPE
    mnt-by:         MNT-MF-NWGSM
    source:         RIPE # Filtered
    
    % Information related to '78.25.122.0/23AS31213'
    
    route:          78.25.122.0/23
    descr:          North-West Branch of OJSC MegaFon
    descr:          Saint-Petersburg, Russia, 191011
    origin:         AS31213
    mnt-by:         MNT-MF-NWGSM
    source:         RIPE # Filtered
    
    % This query was served by the RIPE Database Query Service version 1.74.1 (DB-4)


    Они все действую по одному принципу. Фактически местоположение конечного узла может быть где угодно. А диапазон ip адресов просто выкуплен провайдером, отделение которого расположено в подозреваемом вами городе. Тогда IP узла может определяться как город где расположен главный ДЦ провайдера или головной офис (к примеру).
    Я нахожусь в Благовещенске Амурской области. На разных провайдерах я определяюсь как Москва, и как Чита на другом.

    Один из вариантов - попробовать выполнить трассировку до узла. Быть может промежуточные хопы подскажут где именно находится ваш дружок.
    Ответ написан
    Комментировать
  • Почему битрикс не авторизует пользователя?

    sanchezzzhak
    @sanchezzzhak
    Ля ля ля...
    htmlspecialchars это лишние для функции USER->login
    Ответ написан
    Комментировать
  • Почему не работает javascript, если к домену приписать "www.", и как выйти из положения?

    nowm
    @nowm
    Если вы посмотрите содержимое страницы, которая открывается с www, то в теге «BASE» будет прописан адрес без www. Это такая особенность опенкарта. В кнопке «заказать» адрес выглядит как «index.php?route=бла-бла-бла». Так как у этого адреса нет в начале знака «/», браузер возьмёт для построения полного адреса значение из BASE. Тогда получается, что на странице «http://www.site.ru» ссылка для кнопки «заказать» выглядит как «http://site.ru/index.php?route=бла-бла-бла». И это уже кросс-доменный запрос, который в вашем случае не работает.

    Как решение, все страницы должны открываться по одному домену. Нужно сделать перенаправление с www-адресов на адреса без www с помощью .htaccess.

    RewriteCond %{HTTP_HOST} ^www.site.ru
    RewriteRule (.*) http://site.ru/$1 [R=301,L]


    Это будет более простое решение, чем исправлять адреса в движке Opencart, так как я находил там около 90 адресов, которые в таком случае придётся править. Вы, допустим, правкой адреса поправите работу кнопки «заказать», но от этого не начнут работать кнопки «добавить в желаемое», «добавить в сравнение» и т.п. Там куча таких моментов. Так что, настройка перенаправления в .htaccess позволит решить сразу все эти проблемы.
    Ответ написан
    2 комментария
  • Почему не работает javascript, если к домену приписать "www.", и как выйти из положения?

    HDApache
    @HDApache
    PHP программист
    Потому что domain.com и www.domain.com с точки зрения брузера - разные домены, а в браузерах кросс доменный ajax запрещен

    В скрипте (где AJAX) не пишите полный адрес типа:
    domain.com/my_path/my_script
    а пишите:
    /my_path/my_script

    браузер в зависимости от контекста сам подставит или www.domain.com или domain.com
    Ответ написан
    2 комментария
  • Почему функция wp_signon() на wordpress не авторизирует?

    nowm
    @nowm
    Этот код, кажется, нужно поместить внутрь функции. А саму функцию вызывать до того, как движок отправит заголовки клиенту. Вот так:

    function custom_login() {
        $user['user_login'] = $_POST['log'];
        $user['user_password'] = $_POST['pwd'];
        $user['remember'] = true;
        $signon = wp_signon($user, false);
        if (is_wp_error($signon)) echo $signon->get_error_message();
        //print_r($signon);
    }
    
    add_action( 'after_setup_theme', 'custom_login' );


    Потому что wp_signon ещё кажется куки какие-то создаёт в процессе. Так что она должна вызываться до момента, когда всё это отправляется клиенту. А у вас код наверняка где-нибудь прямо в шаблоне прописан, когда уже поздно вызывать wp_signon.
    Ответ написан
    Комментировать