• Как повлияет на быстродействие изменение таблицы?

    logpol32
    @logpol32 Автор вопроса
    Спасибо, попробую так. Посмотрим как будет работать.
    Первый раз работаю с БД где миллион записей.
  • Как повлияет на быстродействие изменение таблицы?

    logpol32
    @logpol32 Автор вопроса
    Т.е рекомендуете сделать так?
    CREATE INDEX time ON my_base__data(time);
    ALTER TABLE my_base__data ENGINE=MyISAM;
  • Как повлияет на быстродействие изменение таблицы?

    logpol32
    @logpol32 Автор вопроса
    Night, вы об id?

    Структура БД такая
    CREATE TABLE IF NOT EXISTS `my_base__data` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `time` int(11) DEFAULT NULL,
    `ticker` char(10) DEFAULT NULL,
    `last_price` decimal(14,6) DEFAULT NULL,
    `volume` decimal(14,6) DEFAULT NULL,
    `high` decimal(14,6) DEFAULT NULL,
    `low` decimal(14,6) DEFAULT NULL,
    `bid` decimal(14,6) DEFAULT NULL,
    `ask` decimal(14,6) DEFAULT NULL,
    `error` tinyint(1) DEFAULT NULL,
    PRIMARY KEY (`id`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
  • Как повлияет на быстродействие изменение таблицы?

    logpol32
    @logpol32 Автор вопроса
    Как я понял выборка по ключу - выборка по уникальному полю.
    В новой таблице у меня уникальное поле id. Это ключ.
    Но выборка идет по полю time - оно не уникальное. Да и сделать его таковым я не могу т.к. оно должно повторяться.

    Каждые 5 минут я считываю данные валют и время.
    И вставляю 73 записи с одинаковым временем.
    Далее выбираю записи с время_начала по время_окончания.
    (Разумеется, эти записи в 99% случаев будут смежными/расположенными близко, в пределах 73 записей.)
    PS
    Чтобы сделать ключом поле time, мне придется вернуться к первому варианту таблицы и создать 73*10=730 столбцов.
  • Оптимально ли хранение и использование в БД json строки?

    logpol32
    @logpol32 Автор вопроса
    У меня Mysql 5.5 json с 5.7. Переустановить пока не могу. Как и сменить базу на другую.
  • Как работать с dbf fox pro (dBase IV)?

    logpol32
    @logpol32 Автор вопроса
    В самой базе дата полная хранится?

    Открывал разными программами - да полная.

    Если да, я бы на вашем месте посмотрел код чтения и поправил бы.

    Это первое, что я попытался сделать. Исправить файл компонента TDBF. Он всего один.
    Но не вышло. Вроде даже место в коде нашел, но не сработало.
    Хм, может не там исправлял?

    Часть кода TDBF
    'D' : begin
                      G:=StrToInt(Copy(W, 7, 2))+1900; if G<=1920 then G:=G+100;
    				  //G:=StrToInt(Copy(W, 5, 4)); //Это моё - но не сработало (
                      M:=StrToInt(Copy(W, 4, 2)); D:=StrToInt(Copy(W, 1, 2));
                      S:=FormatDateTime('yyyymmdd', EncodeDate(G, M, D));
    				     
                    end;
  • Как настроить PhpStorm 2016.1.2+Openserver?

    logpol32
    @logpol32 Автор вопроса
    Спасибо за ответ. Разумеется в пути есть и пробелы и русские буквы.
    PhpStorm есть стандарт де-факто у 80-90% контор. Несмотря на кучу другого софта, который возможно и лучше и бесплатен, но вот так сложилось. (Исходя из личного опыта и требований работодателей.)

    Я пока не понимаю зачем мне вообще объединять редактор и сервер, но в интернете говорят так надо. Сейчас я не могу открыть сайт иконкой из шторма, но он работает в опенсервере и всё открывается браузером.
    Чушь какая то... Что делаю, зачем - не понятно. Но говорят так надо.
  • Как настроить PhpStorm 2016.1.2+Openserver?

    logpol32
    @logpol32 Автор вопроса
    А зачем тогда вся вышеописанная настройка? То, что я делаю - написано во многих инструкциях в интернете.
    Можно вообще ничего никуда не добавлять. Открывать php файлы в PhpStorm или любом редакторе.
    А "выполнять" средствами apache+php в Openserver.
    Но ведь это как то не профессионально?
  • Как настроить PhpStorm 2016.1.2+Openserver?

    logpol32
    @logpol32 Автор вопроса
    Да.
    И я пробовал разные варианты, пути, конфиги.
  • Как настроить PhpStorm 2016.1.2+Openserver?

    logpol32
    @logpol32 Автор вопроса
    Скачал. Распаковал. Все пути указал.
    Результат тот же 502 Bad Gateway PhpStorm 2016.1.2
  • Как исправить ошибку при соединении с бд из функции?

    logpol32
    @logpol32 Автор вопроса
    Получилось, но я решил отказаться от этой идеи.
    Пространство имен и реализация области видимости объектов пока разочаровывает.
  • Как исправить ошибку при соединении с бд из функции?

    logpol32
    @logpol32 Автор вопроса
    крч просто слеш обратный добавьте

    Вроде заработало.

    Но у вас неймспейс кастомный, и нужно его поправить!

    Но ведь всё в файле с одним неймспейсом должно принадлежать этому неймспейсу.
    new mysqli
    В этом файле я вообще не должен указывать/думать о неймспейсах.
    Я создал экземпляр объекта, функцию, массив и они должны принадлежать этому неймспейсу.

    Или вы хотите сказать, что экземпляр объекта new mysqli, не принадлежит неймспейсу my_api?
  • Как исправить ошибку при соединении с бд из функции?

    logpol32
    @logpol32 Автор вопроса
    неймспейс задайте для mysqli так, тк вы задали свой кастомный, а в нем нет такого класса

    Простите, не понял. При чем тут класс? У меня нет классов.

    И например
    Файл api.php
    namespace my_api;
    function geta()
    {
    $a=1; 
    return $a;
    }


    Файл index.php
    include_once (__DIR__.'/api.php');
    $a=my_api\geta();

    Будет работать.
    Я в функции все задал. Она должна вернуть результат, объект.
  • Почему функция работает не корректно?

    logpol32
    @logpol32 Автор вопроса
    Только вы почему-то считаете, что file_get_contents возвращает результат немедленно

    Действительно. Ведь неизвестно сколько на сервере будет выполняться их скрипт. И когда он ответит.

    Немного изменил код
    echo'/////////////.<br>'; 
    echo'Время начала file_get_contents='.time().'<br>'; 
    $data=file_get_contents($url); if (!$data) {usleep($pause_time*1000000);} 
    echo'Время окончания file_get_contents='.time().'<br>'; 
    echo'/////////////.<br>';


    Где получаю данные
    /////////////.
    Время начала file_get_contents=1532174118
    Warning: file_get_contents failed to open stream: HTTP request failed! HTTP/1.1 429 Too Many Requests in
    Время окончания file_get_contents=1532174138
    /////////////.
    Логично. Как и в коде. Вывести время, попробовать получить данные, вывести время.

    Где ошибка
    /////////////.
    Время начала file_get_contents=1532174117
    Время окончания file_get_contents=1532174118
    /////////////.
    Warning: file_get_contents

    Не логично. А как это Warning вылез за пределы /////////////?
  • Почему функция работает не корректно?

    logpol32
    @logpol32 Автор вопроса
    У вас нигде не написано, что цикл должен непременно выполниться пять раз

    Идет выполнение цикла. Данные либо будут получены, либо нет.
    Если нет - ждем 20 секунд и снова повторяем попытку.
    На выполнение цикла 180 секунд.
    Финальная неудача (error) = гарантированное выполнение цикла около 9 раз. 9*20=180.
    Каждая неудачная попытка - это ошибка Warning: file_get_contents
    Но ошибка, перед финальной неудачей всего одна.
    Вывод - была всего одна попытка. Вопрос - где ещё 8?
  • Как расположить блок с картинкой?

    logpol32
    @logpol32 Автор вопроса
    Даниил Маслов, нет.
    Представьте, что ваше окно - окно браузера. А весь мир - картинка.
    Из окна вы видите часть мира. Больше окно - видите больше. Как то так.
    Я на рисунке изобразил.

    Но ваш вариант более логичный т.к. делает картинку пропорциональной.
    А с учетом того, что я делаю адаптивный дизайн - ваш код очень даже подойдет.
  • Как правильно писать mysql запрос?

    logpol32
    @logpol32 Автор вопроса
    То есть в общем и целом можно прийти к такому выводу:
    1) Всегда использовать `обратные кавычки` для названий объектов БД - баз, таблиц, столбцов.
    Ведь проблемы с зарезервированными словами никому не нужны. Хотя называть таблицы или что-то ещё зарезервированными словами я, разумеется, не буду.
    +Повышение безопасности от возможных sql инъекций (хотя вопрос безопасности отдельная тема) и нужно всегда осуществлять фильтрацию данных.

    2) Всегда использовать 'одинарные кавычки' для значений объектов БД, например значений столбца. Ведь в переменной может быть строка.
    Я прав?

    //$user_id='123 1223 444';
    "SELECT `id` FROM `user_settings` where `user_id`='$user_id'"
  • Как расположить блок с картинкой?

    logpol32
    @logpol32 Автор вопроса
    Простите, но нет.
    В вашем примере картинка как раз масштабируется, изменяет размер, подстраивается под див.

    Есть огромная картинка. И есть окно браузера.
    Окно как бы накладывается сверху, на огромную картинку. (Причем левый верхний угол картинки и окна браузера всегда совпадают.) И в этом окне мы видим только часть картинки.
    Увеличим окно браузера - увидим "больше картинки".

    Хотя ваш подход, наверно более правильный.
  • Как убрать расстояние между блоками?

    logpol32
    @logpol32 Автор вопроса
    Наверно, так и сделаю.
    .panel_row_1
    {
    position: relative;
    width:100%;
    height: 30%;
    margin: 0 auto; 
    text-align: center;
    font-size: 0;
    }

    Тем более, что в панелях все элементы имеют свой собственный стиль.

    А вот это
    А появляются эти отступы потому, что с доктайпом в строгом режиме (html5 доктайп тоже) браузер все равно резервирует место для символов

    Как бы странно. Но без доктайпа не валидный html.