Задать вопрос
Ответы пользователя по тегу PHP
  • Как не танцевать на граблях с бубном делая CRM?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Наиболее затратное по времени выполнения это расчет остатков за весь период на указанную дату в разрезе по номенклатуре.

    1) Это ваше предположение или вы делали замеры производительности запросов и кода?
    2) Если производительность действительно проседает, то каким образом у вас происходит вычисление? SQL с агрегацией и каунтом?
    3) Сколько строк в таблицах выборки?
    4) Что показывает explain?
    5) Индексы?

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    а мне нужно отправить текст который просто в элементе
    Зависит от задачи, а то похоже что вы что-то обычное пытаетесь сделать через... не так.

    1) Яваскриптом: При субмите обходим нужные элементы, формируем из них нужные данные и отправляем на сервер (либо создаем налету инпут, либо отправляем аяксом, по сути одно и то же).
    2) Добавляем скрытые инпуты, дублирующие содержимое элементов. Тогда яваскрипт не нужен, все будет работать автоматически.
    Ответ написан
    Комментировать
  • Как правильно перебрать два массива таким образом, чтобы вывести их конкретные значения в одной строке?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    У вас во первых ошибки в коде, например первое использование mysqli_fetch_assoc($res); там не нужно, а во вторых - обычно так не делают, хранят в базе ссылки на полноразмерные фото, а тумбнэйлы хранять по папкам, например так:
    /images/1808525100/img_554585.jpg
    /images/1808525100/150x200/img_554585.jpg
    /images/1808525100/300x400/img_554585.jpg
    и так далее если нужно. И просто пишут путь до нужного размера.
    Ответ написан
  • Не видит Сессии после обработки формы, как это решить?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $_SESSION['id'] у вас повсеместно используется, но нигде не задается. Видимо вы не совсем понимаете как работают сессии.
    Ответ написан
    3 комментария
  • Получить ключ от массива?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    так как это не ключ от массива - то ответ должен быть - никак.
    Вообще это свойство объекта, лежащего в $array["file_reference"], но так как свойство приватное, получить его можно только через методы объекта, то есть что-то на подобии $array["file_reference"]->getBytes(), точнее - надо смотреть сам класс danog\MadelineProto\TL\Types\Bytes.
    Ответ написан
    Комментировать
  • Реализация правильной опции "запомнить меня" и завершение сеансов удаленно?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Насколько это безопасно?
    Нифига вообще не безопасно, тупо можно перебором всех "попробовать порулить". Большая такая дыра. Ну, пока не заметили - все ок, но кто-то обязательно заметит, 148%.

    И по поводу опции с запоминанием сессии, это как сделать безопасно?
    Уже написали, в принципе смысл - не хранить какие-то явно связывающие данные типа логина или айди в качестве ключа, а генерировать случайный хеш/ключ, который хранить на клиенте и на сервере.

    И также мне всегда нравилось, что сессии можно закрывать удаленно(как это сделано в телеграме).
    Не понял о чем речь, удаленно это из туалета когда комп в комнате? или из тайного центра тайного правительства отключать клиенту сессию и интернет? О чем это вообще?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Не ясно с какой целью это все туда фигачится, рискну предположить что json_encode будет как раз.
    Ответ написан
  • Почему не работает SQL запрос?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    пипец, ну почему всегда одно и то же...

    Создаете переменную (строковую) с вашим запросом. Выводите. Смотрите. Если сразу не понятно где накосячили - копируете и вставляете в пхпмайадмин ручками. Смотрите. Если все работает - проблема скорее всего в подключении, если нет - смотрим в чем ошибка.

    В любом случае проверяем логи или включаем вывод ошибок.
    Ответ написан
    Комментировать
  • Как переделать функционал скрипта под БД?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    селект вэа comment_id is null, потом получить из выборки урлы картинок и удалить их (картинки), естественно что урл надо заменить на серверные пути. Ну и затем делит вэа comment_id is null.
    Ответ написан
  • Почему не хочет вытаскивать данные ИЗ бд или не работает переменная?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1)
    WHERE `ID`={$_GET['id']}
    за такое в приличном обществе бьют клавой по кумполу, до полного просветления.
    2) есть важнейшая функция, которую почему то все новички игнорируют - var_dump(); 100% решает проблемы, главное - правильно и часто использовать.
    3) Если есть запрос и возникает проблема с его использованием - выводите запрос (как строку) и запускайте этот запрос "вручную", например через пхпмайадмин.
    4) Вангую что вывод ошибок и варнингов у вас выключен. Смотрите логи или включите вывод ошибок.
    Ответ написан
    1 комментарий
  • Как скачать файл с сервера?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    да, а что в этом случае тогда?
    а в этом случае во первых браузер вполне естественно будет класть болт на ваши заголовки, ибо контент уже загружен, а во вторых все это примет объект аякса, а не документ, и если вам так принципиально сделать это именно аяксом, то надо писать на жс обработчик принятого контента и из него лепить уже блоб, и потом файл сохранять только. Тупо, муторно, жрет процессор и память. Достаточно было бы сделать линк с нужными параметрами и отправлять на сервер запрос гет, точно так же как вы делаете это аяксом, только без аякса, и все будет работать.
    Ответ написан
  • Как при отправке post не записывать пустыне input?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Как сделать так, чтобы пустые значения не записывались в бд?
    А какие должны записываться? Что-то же должно туда попасть?
    Ответ написан
    Комментировать
  • Почему не работает обновление ajax?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) Картинки вообще не нужны, зачем они здесь? Ничего относящегося к сути вопроса в них нет.
    2) "весь код" оберните в тег кода и уберите под спойлер, все равно там ничего полезного нет.
    3) Ваш "обработчик" ничего не возвращает, а должен вернуть блок который надо добавить в текущий хтмл.
    Ответ написан
    Комментировать
  • Как зная MIME types в php получить расширение файла?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Комментировать
  • Какую IDE для PHP выбрать (бесплатную)?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    PHPStorm имеет студенческую бесплатную лицензию. По сути это эклипс с жетбрэйнс хорошо настроенными плагинами, но лучше под пых пока ничего вроде не придумали.
    Ответ написан
  • Почему выходит ошибка Fatal error: Uncaught Error: Function name must be a string?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $URL_ARR у вас может быть (судя по приведенному коду) либо нулл, либо аррэй, зачем вы его вызываете как функцию?

    PS: Научитесь пользоваться var_dump, жизнь сразу станет лучше.
    Ответ написан
    Комментировать
  • Как организовать поиск ключа массива по маске в php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    нихрена не понятно. Напишите что вы хотите получить. Единственное что понятно - что вы что-то не так делаете.
    Ответ написан
  • Почему после отправки формы событие submit больше не срабатывает?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $('body').click(function(e) {
                            e.preventDefault();
                            $('.success').css('display', 'none');
                        })

    по суксессу вы зачем то на body вешаете листенер который заставляет ВЕСЬ документ ложить болт на клики. Подумайте для чего это и что нужно вместо этого, а так же зачем вообще у вас этот код...
    Ответ написан
    1 комментарий
  • Почему не работает пример с cURL?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $url = "info.php";
    почитайте во первых рфц про урл, во вторых ошибки смотрите, либо включите вывод ошибок и варнингов, либо смотрите логи.
    Ответ написан
    Комментировать
  • Как мне проверить, отправляет ли данные формы на сервер через curl в php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    curl дает вполне четкие ответы на любой запрос, в том числе ответ удаленного сервера, ошибки подключения, статус и тело ответа. Смотрите что вернул сервер и стройте логику в зависимости от этого.
    Ответ написан