Задать вопрос
  • Как вывести из одного класса свойство другого?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Опустим грустные слова про код, теперь хотелось бы понять - что и откуда хотите вызывать? У вас 2 (описанных) класса, в одном создается экземпляр другого, далее что? Как вызвать его свойства? Создать экземпляр LOADER(почему заглавными?) и тогда из него уже $this->route->test();(кстати тоже почему то заглавными в конструкторе). Или цель вывести из route свойства принадлежащие loader? Тогда это бред, router не знает(и не должен) ничего о loader, если понадобилось такое - значит "что-то пошло не так" при проектировании кода, хотя это и так видно, без такого глубокого анализа )
    Ответ написан
  • Как реализовать пагинацию в категориях?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Алгоритм делится на 2 части, хотя переменные используются одни и те же. 1 часть отвечает за выборку текущего набора статей/итемов согласно указанной страницы. Обычно передается как параметры LIMIT и OFFSET в запрос бд к нужной таблице, в итоге получаем только набор для текущей страницы.
    Вторая часть формирует навигацию: подсчет количества страниц в пагинации, линки на ближайшие страницы, линки назад/вперед/начало/конец. Простая арифметика в 2-3 действия.
    Собсно все.
    Ответ написан
  • Как сделать, чтобы ссылки не обрывались?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    if(mb_stripos ($string,"<a") < 400){
        $sub = explode("</a>",$string); 
        $sub = $sub[0]."</a>";  // если надо добивать до 400 после ссылки, надо еще считать позицию "<a>", и от нее добивать до 400, думаю реализуете сами
    }
    else {
        $sub = mb_substr($string, 0, 400,'UTF-8');
    }
    Ответ написан
  • Хватает ли использование одной датабазы Redis для проекта средней сложности?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Вообще, строго говоря, редис не дб, скорее продвинутое key-value хранилище, выборки и сортировки - это не его задача. Как построить на нем даже не очень сложный сайт, я честно говоря не сильно представляю.
    Ответ написан
    Комментировать
  • Какие ошибки в алгоритме скрипта? Парсинг контента (Simple HTML Dom)?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Зачем здесь эти простыни? Какая проблема в принципе? Не верный sql на выходе? Значит проблема в самом тексте запросов? Какую ошибку выдает при импорте? Эта ошибка есть в гугле? Какая структура таблицы? Что не совпадает?
    Ответьте (себе) на эти вопросы, думаю проблема будет очевидна. Пока кроме куска кода, который вы выложили неизвестно зачем(он ведь рабочий?), в вопросе нет ни байта полезной информации по теме.
    Если ответы на эти вопросы не помогут с решением вам - выложите их для нас, возможно тогда будет понятно что делать.

    создает файл базы SQL
    , видимо создает текстовый файл с SQL запросами? Файл базы - совсем другое.

    как правильно сформулировать SQL запрос на обновление данных, видать в синтаксисе запроса ошибка

    Я так понимаю что вы просто импортируете sql файлик через phpmyadmin? В результате выбивает с ошибкой? Какая ошибка?
    Ответ написан
  • Как понять работу sql-запроса?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Возможно у вас есть непонимание основ работы бд. Например
    SELECT `group_id` FROM `vkmembers` ORDER BY `members` DESC LIMIT 0,20

    возможно по вашему мнению быстренько выбирает 20 последних записей, что на самом деле не так.

    PS: попробуй уменьшить query_cache хотя бы до 16 мб, а то и вовсе отключить.
    Ответ написан
  • Как определить кто делает редирект?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) Смотреть апачевые настройки, вполне себе может быть прописаны переадресации прямо в конфиге.
    2) Nginx тоже умеет редирект.
    3) Яваскрипт не может делать 301 редирект, но может пересылать на страничку с таким редиректом.
    4) Собсно какой-то из файлов цмс.
    Ответ написан
    Комментировать
  • SEO: Какой URL выбрать для страниц товаров в интернет-магазине?

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Написано неряшливо, и без особого понятия что зачем вообще пишется.
    if($response_xml_data)
    $response_xml_data у вас не булево значение, значит нужно проверить что вы там хотите получить.
    foreach ($data->property as $prop)
    неполхо бы проверить что $data->property это непустой массив.
    if( isset($_POST['bedrooms']) or 
        !empty($_POST['bedrooms']) or 
        isset($_POST['postcode']) or 
        !empty($_POST['postcode'])){
            if($data2->bedrooms == $bedrooms or 
               $data2->location == $postcode){
                echo 'aaaaa';
    тут вообще все грустно, !empty и isset вместе, зачем??? если не пустая значит точно есть. А если пост запрос отправлен с пустыми полями - будет существовать но будет пустая. Плодите лишний код - путаетесь в собственных ногах.
    Напишите нормально структуру и все заведется.
    Пользуйтесь отладкой, хотя бы в пределах print_r, сильно помогает.
    Ответ написан
  • Как передать начальные данные клиентской стороне?

    ThunderCat
    @ThunderCat Куратор тега JavaScript
    {PHP, MySql, HTML, JS, CSS} developer
    Если это не вопросы на задачи - все ок, куки, локалстораж, переменная, все зависит от стиля программирования и необходимости хранить межстраничные состояния.
    1 ) Переменная если не требуется ничего сохранять.
    2 ) Локалстораж для хранения до закрытия браузера.
    3 ) куки если требуется запомнить что-либо надолго, на несколько посещений.
    Если речь идет о каких-то конкурсных/экзаменационных вопросах - хранить их на стороне клиента не секурно.
    Ответ написан
    1 комментарий
  • Стотит ли использовать БД для файлов?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Я тут мимо проходил ), смотрю - Александр Седов в сайте разбирается, ну я подхожу - смотрю - а он как раз базу вынул, смотрит, большая, говорит какая! Может не нужна такая большая, может выкинуть ее вообще?!
    Я его спрашиваю - а что внутри? Мож ценное что?
    А он так - да нафига она вообще? Что внутри не смотрел, но не может быть чтобы такая большая и нужна была! Прям жо... сердцем чую - лишняя деталь, к гадалке не ходи!
    :))
    По делу:
    Мож все таки глянешь перед тем как рефакторить, мож не зря она там? Вряд ли в ней хранится что -то простое типа файлов, больше похоже на историю или списки воспроизведения.
    Ответ написан
    Комментировать
  • Как составить запрос на выборку в Mysql?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    тут почитать, здесь немного, вобщем не стесняться пользоваться гуглом.
    PS: Тут тоже по теме вроде
    Ответ написан
    2 комментария
  • Как сформировать XML документ?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
  • Как вывести значение из массива сессии?

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

    еще раз внимательно и по буквам читаем дебаг:
    [default] => Array ( [session_name] => 123 )
    смотрим что сначала писали вообще $key = $_SESSION['name'] (явно факап по невнимательности), а затем тянем $_SESSION['session_name'], хотя дебаг как бы намекает что все ложит в дефолтный массив $_SESSION['default'], шоб не путать с ручным добавлением если таковое случится.
    Ответ написан
    5 комментариев
  • Как объединить запрос?

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

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Если не критично хранение после ресета - редис.
    Ответ написан
  • Почему не помещает массив?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer

    $edit_row = $stmt_edit->fetch(PDO::FETCH_ASSOC);
    print_r($edit_row); // здесь скорее всего будет false, не нашлось соответствующих записей в бд.
    extract($edit_row);



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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    $try = 10;
    $content = "";
    while($try>1){
    if(empty($content) ){
       $content = curl_exec($ch);
    }
    else break;
    $try--;
    }
    Ответ написан
    Комментировать