Задать вопрос
  • Есть ли Wordpress веб студии на массовые (1000 заказов / месяц) доработки?

    ThunderCat
    @ThunderCat Куратор тега Веб-разработка
    {PHP, MySql, HTML, JS, CSS} developer
    Есть неплохой метод примерной оценки ресурсов работы:
    1000 заказов / 22 рабочих дня = ~45 заказов в день. В зависимости от сложности работы она займет от 1 до 5 человеко-часов, пусть будет 3 часа на задачу. Итого в день нужно 45*3=135 человеко-часов/день на данную работу. Примем рабочий день равным 7 часам, с учетом перекуров/чая/кофе. 135/7 = ~20 человек справятся с данной задачей, + возможно потребуется некоторое количество доп. персонала, менеджеров и кухарок допустим. Скажем человек 5-6.
    Итог: контора в 25-30 чел штата справится с потоком самостоятельно. При необходимости 2-3 менеджера посаженные на отлов фрилансеров и раздачу им задач могут сэкономить до 50% рабочего люда.
    Ответ написан
    7 комментариев
  • Как правильно, если это возможно вызвать класс внутри другого класса?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    1) статический класс А
    тут
    class B {	
      function __construct() {
        $a->print_tst();
      }
    }
    кто и каким образом должен угадать что а это экземпляр класса А? соответственно:
    2) При обращении нужно создать экземпляр класса А, иначе такой вызов не имеет смысла.
    3) DI - передать в конструктор созданный экземпляр А
    Ответ написан
    Комментировать
  • Как сделать логику приложения на PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Конструктор для объектов может содержать неявный вызов инициализации. Например при передаче в конструктор id или имени сайта по нему загружается из базы все данные, однако обычно это делают через отдельный метод инициализации, который в конструкторе вызывают. если никаких параметров не передается - создается пустой(новй) объект.
    По поводу сессии - если в объекте нет ссылок на внешние ресурсы(например на DB), то serialize() работает, храните как строку, потом unserialize() для чтения из сессии.

    У вас в коде все же как-то все кривовато,
    1) прям в объекте сайта создается подключение к бд и фигачатся запросы,
    2) Названия классов пишутся с большой буквы
    3) тут же вывод каких то обработок... Вообще как будто не ооп а попытка писать объекты процедурным стилем.

    // конструктор объекта
    function __construct($id = ""){
      if($id==="") {do some}// создаем пустой объект
      else{ $this->initById($id);}
    }
    
    // в коде где создаем новый сайт
    $site = new Site();
    $site->add($dataset); // передаем параметры, можно отдельно каждый, можно заранее созданным массивом.
    Ответ написан
  • Следует ли закрывать подключение к MySQL?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Tinymce заменяет стандартное поле ввода, наследуя его имя. Если не можете понять как и что заменилось в хтмл смотрите var_dump($_POST) со стороны сервера.
    Ответ написан
    Комментировать
  • Удалить много таблиц из Phpmyadmin?

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

    PS: бэкап сначала сделайте.
    PPS: сделайте поиск по странице со всеми таблицами на "данное слово", выделите все галочки, затем снимите только подсвеченные поиском. Не всегда нужно использовать микроскоп, если есть молоток.
    Ответ написан
    1 комментарий
  • Скрипт на JS для загрузки фоток в галерею?

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

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

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

    ThunderCat
    @ThunderCat Куратор тега CSS
    {PHP, MySql, HTML, JS, CSS} developer
    а что не так? На белый фон наложен градиент, это вы имеете в виду? Так вы на белый накладываете цвет, конечно он будет другой.

    тут в примере 4 смотрите подпись:
    Результат данного примера показан на рис. 4. Обратите внимание, что один из цветов градиента задан прозрачным, поэтому он меняется косвенно через цвет фона веб-страницы.
    Ответ написан
    3 комментария
  • Не могу разобраться с GD?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Пользуйтесь нормальными редакторами кода с автокомплитом и подсветкой, тогда у вас будет гораздо меньше проблем с такими функциями как imagecreatefropmpng() например. И вообще почитать доки по гд, там все понятно написано, просто НАДО ЧИТАТЬ.
    Ответ написан
    3 комментария
  • Какие материалы посоветуете для обучения MySQL?

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

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Мои глаза... Где вы этот кошмар пишете? В застенках гестапо? Кто вас так мучает? И зачем вы мучаете нас?

    написано черным по английскому: не отправляются заголовки патамучта уже начат вывод данных, который начат в dy_header.php, соответственно никакие куки
    setcookie(session_name(), '', time()-2592000, '/');
    тут уже не запишутся. Учите ну хоть какие-то основы прежде чем писать фикалокод.
    Ответ написан
    4 комментария
  • Как определить оптимизированны ли изображения на сайте?

    ThunderCat
    @ThunderCat
    {PHP, MySql, HTML, JS, CSS} developer
    Изображения должны быть в том размере, в котором они указаны в контейнере, то есть если в контейнере указано 1024*800 то и изображение должно быть таким же в пикселях. И сжатие(при сохранении из фотошопа) надо подбирать такое, чтобы не загубить картинку артефактами, и при этом выставить минимально возможное значение качества.
    Ответ написан
    Комментировать
  • Почему данные не приходят на сервер?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Как отлаживать лажу:
    1) проверить на стороне сервера что пришло куда надо, сделать ечо в первой строке(возможно тут url:'/changebase.php', или еще что -то...).
    2) проверить что метод прихода куда надо точно пост
    3) Сдeлать var_dump($_POST), посмотреть что наприходило вообще.
    4) искать неочевидные глюки аля забыли вставить форм тэг и тд.
    Ответ написан
    2 комментария
  • Как передавать пароль от браузера серверу, как его хранить на сервере и проверять корректность?

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

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

    ThunderCat
    @ThunderCat Куратор тега CSS
    {PHP, MySql, HTML, JS, CSS} developer
    в конце функции обработчика добавить $("#button").hide();
    Ответ написан
    Комментировать
  • Почему после переноса появилась ошибка синтаксиса?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    Код файла с ошибкой в студию, экстрасенсы все уехали на битву.
    При обфускации кода в любом случае нужно сделать перенос строки по ";", поменять ; на ; + \n\r , и тогда посмотреть в какой строке ошибка. А так - гадание на говнокоде.
    Ответ написан
    2 комментария
  • Что не так с этим PHP?

    ThunderCat
    @ThunderCat Куратор тега PHP
    {PHP, MySql, HTML, JS, CSS} developer
    var_dump(class_exists(UserController)); // true
    че прям так и выдает true? и кавычки не нужны?
    пробейте сначала get_declared_classes()
    посмотрите или класс назван верно, и файл совпадает по регистру. Вроде пока больше мыслей нет )
    Ответ написан
    Комментировать