Ответы пользователя по тегу PHP
  • [Maps] Отправка SQL через JS/PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Есть БД вида time -> array[];
    Шта??????????? Может данные такого вида?
    рисовать массив array[] путем обращения к БД
    Куда рисуем???????????
    В качестве БД рассматривается PostgreSQL (или MySQL?)
    так бд есть или еще только рассматривается???
    Подскажите, как это можно оформить, чисто на JS - читал небезопасно
    Если имеется в виду JS на странице пользователя - не столько небезопасно, сколько нереально, обмен данными с бд осуществляется на серверной части, между серверным скриптом и бд.

    UPD: Смотрите работу с ajax, отправляйте запрос скрипту на сервере, получайте json массива из бд.
    Ответ написан
  • Как оптимизировать сервер под тяжелые скрипты с небольшим количеством пользователей?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    А есть возможность переписать серверные скрипты на, допустим, С, или чем то компилируемом, питоне например, или это не входит в проект? Это серьезно ускорило бы работу системы.
    Диски - если есть возможность и еще не сделали - поставить ssd, это реальный прирост даст при работе с файлами.
    Если есть работа со значениями key->value ставьте редис или мемкеш и оптимизируйте под них скрипты.
    Остальное без конкретных деталей сложно сказать, бо скрипты с такими расчетами сложно невидя оптимизировать.
    Ответ написан
    5 комментариев
  • Как вывести нужные значения?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Если страницы строятся по типу деревьев - от 0 - корень и далее с вложенностью - для каждой группы добавьте дополнительный ид группы, если дерево страниц не будет больше 100 нод допустим, то выбираем все ноды с нужным груп_ид, а далее средствами пыха делаем перебор и строим цепочку.
    Ответ написан
    Комментировать
  • Как обратится к свойству потомка из родителя?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    А разрешите спросить, зачем вам статик? Может я чего то недопонимаю? Не проще сделать нестатический метод и нормально создавать экземпляр и юзать $this?
    Ответ написан
    Комментировать
  • Как хранить массив пользовательских данных? Сессии или куки?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Если задача стоит избежать хранения в базе - то вариант с хранением в куках исключает целостность, на разных устройствах залогиненый пользователь будет видеть разные данные. При хранении в сессии - при логауте/логине с др. устройства все данные уходят в горы, соответственно этот вариант тоже не верный, ибо я дома не увижу того же что с работы.
    Я бы писал в базу, как на алиекспрессе и ибэе, и для статистики полезно, и для подсказок типа "люди которые смотрели этот товар так же смотрели..." на крайняк - ченть кейвалуйное, редис например с бессрочным полем, но после ребута полюбому данные уйдут. Запись и вытаскивание 15 строк из бд - миллисекунды, а профит в будущем нехилый.
    Ответ написан
    Комментировать
  • Как оптимально организовать хранение и редактирование настроек сайта?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Ничего не мешает поменять метод на post. В коде изменится только $_GET на $_POST переменные.
    Перед заливкой в базу обычно неплохо проверять данные на "качество", загружать данные в базу прямо из пост/гет - плохая практика.
    Подумайте о том как будут именоваться файлы, как их структурировано хранить и привязать к определенной записи.
    Как избежать дублей и как удалять их при удалении записи.
    Удачи )
    Ответ написан
    Комментировать
  • Почему не загружаются файлы на сервер (PHP)?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    проверь какие права у апача, и какая у него группа, возможно апач не имеет прав нужных, хотя папка и с правами 777, хз, все равно проверь.
    Включи вывод ошибок и варнингов, если не включены. Возможно ошибки есть, но они подавляются.
    Попробуй просто перекинуть файл, не меняй ему название, перекинь хоть то что пришло.
    Пока более умных идей не пришло.

    UPD: папку укажи с абсолютным путем от document_root.
    Ответ написан
  • Как сделать проверку на корректность введённых в форму данных конфигурации - имя базы данных и пароля?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Бд может (и должна) вернуть токен соединения или ошибку. Соответственно смотрим нормальный адаптер бд в мануале, что и как подсоединяется, создаем экземпляр соединения с заданными пользователем параметрами, если все прошло нормально, "продолжаем разговор" (с). Если выдает ошибку - перехватить, отправить пользователя обратно на шаг заполнения полей и написать что за ошибка была.
    Profit.
    Ответ написан
    2 комментария
  • Как рекурсивно удалить файлы и папки с веб-сервера?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    А чем ваш костыль плох, ну кроме того что он зачем то все объекты обходит? Может я чего не понимаю?
    Грохнул папку - создал заново, сильно шустрее чем рекурсивно все обходить по 1 объекту, если в кеше у вас 10 000 объектов, то это может затянуться на некоторое время, а так - чик, и по самые гланды.
    Ответ написан
  • Как улучшить качество фото при ресайзе PHP?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    как у вас все работает? city.php инклудится в index?

    ini_set('session.gc_maxlifetime', 3600*24*30);
        ini_set('session.cookie_lifetime', 3600*24*30);
        session_start();

    Сначала настраиваем сессию, потом вызываем.

    session_destroy(); убираете, зачем она там вообще? Если вы делаете инклуд, то вы сначала стартуете сессию, потом ее грохаете. Какой смысл, если unset($_SESSION['locality']); должно все что надо сделать.

    Если перед session_start() будет что - либо выводиться(хтмл или ошибка) сессия стартовать не будет. То же касается и session_destroy();

    Обычно если есть какие-либо ошибки их можно отследить в ерорлоге или включить вывод ошибок через настройку php.ini и понять какие проблемы возникли при создании сессии. В частности есть вариант что переполнен диск и сессии просто не создаются на диске.

    Если это все у вас отдельные страницы(то есть есть еще страницы кроме index.php) во всех в начале должно быть session_start();, иначе сессии работать не будут. Эта директива создает связь куки в браузере и сессионной записи на сервере, без нее механизм сессий работать не будет, т.е. сессию нужно каждый раз "перестартовать".
    Ответ написан
    2 комментария
  • Отправка данных по ссылке, в чем может быть проблема?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    раз по первой ссылке происходит упдэйт - логично что не приходят значения из реврайт руле во втором случае. Натыкайте print_r($id) и print_r($rat) и добавьте print_r($_POST); Все сразу станет понятно, какие переменные и как получаются. Вам уже указали варианты, можете воспользоваться ими или соорудить свой костыль.
    Ответ написан
    Комментировать
  • Почему не добавляется весь текст в БД?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Код не представлен, но в целом в таком случае могут быть только несколько проблем:
    1) Смотреть настройки php, max_post_size
    2) на стороне сервера смотреть или дошел пост запрос, если дошел - уже проверять запрос в базу, как отрабатывает запрос
    3) возможно в тексте есть спецсимволы, а ваш код не предусматривает экранирование.
    4) Uwe_Boll тоже мысль написал, при отправке get есть ограничение связанное с протоколом http, 254 символа в строке урл.
    Ответ написан
    3 комментария
  • Проблема с записью Session php mysql?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Это просто каша из символов, нифига неясно потому что глаза можно сломать, и сами теперь разобраться не можете, т.к. код просто нечитаемый и невозможно понять где хвост где грива. Код как будто из середины 90х. mysql_ уже давно никто не использует, т.к. depricated, никто это г разгребать не будет, перепишите нормально если вам хочется чего-либо достичь в программировании. Не мучайте людей такими простынями гкода.
    Ответ написан
    Комментировать
  • Как посчитать количество секунд WAV файла средствами PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    ffprobe
    здесь пример с ffmpeg
    Ответ написан
    Комментировать
  • [PHP,SQL, update] Как правильно сделать update строки со спецсимволами?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    pdo, placeholders, prepared statements и другие страшные слова из мануала.
    Ответ написан
    3 комментария
  • Как лучше хранить временные данные?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Вариант с мускулем не самый лучший, все же это не очень быстрое хранилище, не стоит выбирать технологию только из за того, что Вы с ней хорошо знакомы. Посмотрите в сторону Redis, он очень прост, имеет структуру key=>value, как мемкеш, но и есть ряд плюшек, например инкрементные поля, время жизни(ну это и меме есть) и еще немного разных бонусов. ОЧЕНЬ легко интегрируется, я за 15 минут написал свой адаптер, это вместе с чтением документации. Я думаю это то что вам нужно.
    Ответ написан
    2 комментария
  • Проблема с отправлением письма php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    а что вообще приходит в пост проверяли? Проверьте работу скрипта на простых данных, возможно проблема не со скриптом а допустим с почтовым сервисом. Почему было не проверить что вообще в скрипте происходит до того как писать вопрос? А если проверяли - напишите что проверили, а то сплошная магия и "ничего не работает".
    Есть логи, есть var_dump, учитесь искать ошибки по шагам!
    Ответ написан
    Комментировать
  • Как выводить кириллицу?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    php.ini: default_charset = "UTF-8"

    httpd.conf: AddDefaultCharset utf-8

    mysql/my.cnf:
    [client]
    loose-default-character-set = utf8
    [mysql]
    loose-default-character-set = utf8
    [mysqld]
    collation-server = utf8_unicode_ci
    loose-default-character-set = utf8
    character-set-server = utf8
    init-connect = 'SET NAMES utf8'
    skip-character-set-client-handshake
    Ответ написан
    Комментировать