Ответы пользователя по тегу PHP
  • Почему после загрузки из БД массив не имеет данных?

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

    это же массив, присвойте его другой переменной
    $some_temp_horroble_namestyling_array = array();
    while ($body_part = mysqli_fetch_array($body_result, MYSQLI_BOTH)) {
           $some_temp_horroble_namestyling_array[] = $body_part;
            echo "body_part[" . $body_part['Part_ID'] . "] = " . $body_part['Name'] . ", ";
        }
    var_dump($some_temp_horroble_namestyling_array);
    Ответ написан
  • Как передать GET параметр?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    На странице авторизации переход осуществляется так: require('LK.php');

    не заметил перехода, слишком быстро моргаю?

    1) Шорттеги, не учитесь сразу плохому. Используйте полный тег.
    2) Включите отладку - скорее всего что-то работает не так как вы себе представляете по неопытности, но вы не видите этого из за выключенных сообщений об ошибках/варнингах.
    ini_set('error_reporting', E_ALL);
        ini_set('display_errors', 1);
    первыми строчками в индексе.
    3) где этот ваш индекс? все остальные особо не нужны на самом деле...
    Ответ написан
    Комментировать
  • Как отправить данные из JS в PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) смотрим консоль на ошибки
    2) смотрим нетворк на предмет что отправляет и принеимает скрипт аякса
    3) не тупим, включаем отладку на сервере,
    ini_set('error_reporting', E_ALL);  ini_set('display_errors', 1);
    и тогда еще можно заметить что
    4) по итогам пп. 3 и 4 видим, что постом отправляется $_POST['x'] а не $_POST['model'], ибо сервер нихрена не знает про model, вы ему передали пару ключ-значение.

    UPD: я сейчас скажу кое что, за что меня будут пинать местные гуру фронта: Возьми гребаный JQ и не морочь себе голову. вот буквально все там нормально сделано.
    var url = 'some.url';
    var dataset =  {"x": 5};
    $.ajax({
                    url: url,
                    dataType: "json",
                    type: "POST",
                    dataset:dataset,
                    success: (function (data) {
                        if (data == 'ok') {
                            doCoolStuff();
                            alert ('Yeeei!');
                        }
                        else {
                             alert('Booo!');
                        }
                    })
                })
    Ответ написан
  • Вывод картинок с mysql как?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    для начала - учите синтаксис и PSR, который не просто так придуман.
    foreach($sql_img as $q) //здесь должна быть открывающая { 
      $img .= '<li  style="background-image: url({theme}/img/'.$sql_img['name'].');" class="overlay"></li> ';
    // тут у вас цикл закончился и вернулся к новой итерации, это равноценно закрывающей }
    // а так же нахрена вам $q если вы обращаетесь к $sql_img? и нахрена тогда вообще цикл? 
    $tpl->set('{img}', $img); // тут вы получили элемент массива $sql_img['name'] в каждой строчке. соответственно будет одна картинка.
    Ответ написан
  • Как создать ЧПУ?

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

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

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Но хотелось бы красиво всё сделать с одной точкой входа.

    у вас слегка неверное понятие единой точки входа.
    1) Статика это плохо, тем более если это стартовый класс.
    2) Не проще организовать нормальный мвц?
    3) Как заметил Олег Муравейко - если вы пытаетесь почесать яйца пяткой - скорее всего вы выбрали не ту конечность.

    точка входа - индекс, она уже вызывает класс Апп, или бутстрап или еще какой-то стартовый класс, который уже выполняет настройку окружения и запускает Роутер, в котром и происходит магия выбора Контроллера и экшна, после чего уже все полученные в контроллере данные передаются в Вид, который рендерится и отдается клиенту. У вас же прям в стартовом классе все в кашу - и старт контроллеров, и "роутинг", и экшны запускаются. Салют салатом.
    Нужен аякс - заводите аякс контроллер и там уже экшны, которые отвечают на определенные запросы от фронта.
    Нужен Юзер - заводитен юзер контролллер и там все экшны - лист, эдд, делит, едит, шоу...
    Ответ написан
    Комментировать
  • Как проверить query string на наличие параметров в php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    isset($_GET["parametr1"]) // проверит наличие переменной, независимо от того, есть ли у нее какое-то значение
    empty($_GET["parametr1"]) // проверит отсутствие переменной, либо существование, но со значением NULL, false, 0, array() или "".
    Ответ написан
    Комментировать
  • Не работает переключение между файлами?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Вы уже вроде нечто подобное спрашивали?
    И явно не очень понимаете как работает клиент-серверное пхп приложение.
    Кнопки которые вы прописали (точно так же как кнопки которые предложил вам Lander) перенаправляют браузер на страничку с адресом http://вашдомен.tld/текущий_путь_на_сайте?show=1, видимо нарушая работу роутера движка сайта.
    Далее,
    if (isset($_GET["show"]) && $_GET["show"] == 1)
    Это порверка на гет параметр, понятно, но что вы делаете дальше? если это проверка на вывод дальнейшего содержимого файла тут должно быть что-то вроде {} или : и endif;
    Проще просто сделать в основном файле инклуд по этому параметру соответствующего файла.

    PS: Если не ошибаюсь изначально задача была сделать это без перезагрузки(аяксом)?
    Ответ написан
  • Массовая рассылка писем php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) форма отправляет тему и описание методом пост в скрипт
    2) скрипт получает тему и описание, выбирает из базы емэйлы всех прользователей в массив
    3) проходим форичем по массиву, на каждый отправляем письмо с темой и описанием
    4) обнаруживаем что все письма валятся в спам после отправки подряд 200 писем
    5) обнаруживаем что письма больше не отправляются с шареда после отправки подряд 500 писем
    6) ищем и находим себя в банлистах всех мэйлпровайдеров.
    7) танцуем, вы великолепны!

    Не надо делать каку, хотите спамить - юзайте внешние сервисы а ля мэйлчимп.
    Ответ написан
    2 комментария
  • Как развиваться Junior-у PHP?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    if (!preg_match('/^[a-z0-9\-]+$/', $title)){

    *цифры *дефис

    PS: По уму заглавные буквы тоже вроде должны входить?
    PPS: https://regex101.com
    Ответ написан
    2 комментария
  • Фреймворк, макро-Фреймворк для разработки портала?

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

    При наличии понимания базовых вещей ООП и понимании основного механизма MVC пару месяцев на фреймворк это много. Как тут уже написали - есть тот же ларавель, он не гениально построен, учит немного неклассическому подходу к коду и моделям, но для новичка с задачей быстро войти в тему и написать что-то свое -вполне гуд. Когда почувствуете что выросли из него - перейдете на что-то посрьезней, Йу /Симфони/Зенд.

    В любом случае - писать свои костыли не есть гуд, задач интересных и сложных на большом проекте и так обычно много, нужно максимально использовать готовую кодовую базу, которую разрабатывали вполне толковые прогеры в течение достаточно длительного времени.
    Ответ написан
    3 комментария
  • Как отловить ошибку Ajax + php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Почему-то обращение на proces.php выдает ошибку 500.

    обычно так происходит при выключенном выводе ошибок, при фатал еррор. Смотрите логи или ini_set('display_errors', 1); вставьте перед кодом.
    Ответ написан
  • Как обратиться к функции через $this в цикле?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    SELECT * FROM `users` ORDER BY `users`.`id` DESC LIMIT 2,1
    Ответ написан
    Комментировать
  • Запуск скрипта на php?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    6 комментариев