Ответы пользователя по тегу PHP
  • Как на ratchet сделать диалоги на сокетах?

    @ssrdop
    Хороший туториал https://www.youtube.com/watch?v=AEpq8gggwLk&t=1s
    Ответ написан
    Комментировать
  • Есть ли рабочие примеры websocket?

    @ssrdop
    Вот хороший туториал. Видео

    Используется библиотека ratchet. В видео 2 части. Все очень подробно.
    Еще можете использовать библиотеку workerman.
    Ответ написан
    Комментировать
  • Как избавится от знака? , в запросе?

    @ssrdop
    Не понятно какая строчка должна быть в запросе и что Вы хотите получить. Вы хотите вывести все что после слеша?
    Ответ написан
  • Как правильно выкинуть 404 exception, если ошибка возникает при кешировании страницы?

    @ssrdop Автор вопроса
    $file = "template.php";
    
    try
    {
        ob_start();
        echo $file . "<br>";
        throw new Exception("asdasd");
        echo "asdasd";
         echo ob_get_clean();
    }
    catch (Exception $e)
    {
        ob_end_clean();
        echo "404";
    }
    Ответ написан
    Комментировать
  • Что значит name="files[]" в input[type="file"]?

    @ssrdop
    Например, твоя задача загрузить 3 изображения на сайт. Ты пишешь в форме:

    После этого в массиве $_FILES у тебя будут переменные pic1, pic2, pic3 и с каждой тебе придется работать отдельно

    А если нужно загрузить 25, 30 и более?
    Для этого используют

    Теперь все картинки доступны в массиве pic, который, в свою очередь, является ячейкой $_FILES
    Ответ написан
    Комментировать
  • Объясните мне пожалуйста, как понять переменную GET?

    @ssrdop
    В суперглобальную переменную $_GET попадают все те данные, которые ты видишь в адресной строке браузера.
    Например www.mysite.ru?user=12&action=delete&url=google.com

    Если ты распечатаешь переменную $_GET (например с помощью var_dump функции), то ты заметишь, что в этой переменной (даже лучше сказать массиве) есть переменные $_GET['user'], $_GET['action'], $_GET['delete'], которые равны, соостветственно: 12, delete, google.com.

    Чтобы сформировать переменную $_GET нужно просто сформировать ссылку типа удалить пользователя под номер 12 и перевести его ...
    Ответ написан
  • Как сделать отдельную страницу входа на сайт?

    @ssrdop
    Используйте лучше куки, сессии будут тормозить работу. Т.е при входе на сайт проверяете, есть ли кука, если нет, то показываете страницу с фильтром материалов, а если кука есть, значит пользователь уже был и его можно перенаправить куда Вам угодно.
    Ответ написан
    Комментировать
  • Правильно ли я сделал простое меню на php?

    @ssrdop
    для большой красоты и ясности используйте альтернативный синтаксис php. А так все верно.
    Ответ написан
  • Как передать из форму данные?

    @ssrdop
    Я бы сделал так. Обработал бы данные из формы. Вставил бы их в переменные. Например $name, $count, $something. После в коде бы написал следующее
    header("Location: http://www.mysite.ru/" . 'name/' . $name . '/count/' . $count . '/something/' . $something);

    Получится что то типа www.mysite.ru/name/nick/count/3/something/56
    А потом после перенаправления ты парсишь строку /name/nick/count/3/something/56/ и используешь переменные из строки для дальнекйшей работы: $name, $count, $something, которые равны соответственно nick, 3, 56
    Ответ написан
    Комментировать
  • Почему правильнее делать сайт по mvc?

    @ssrdop
    MVC это очень хорошая вещь. По началу, кажется, что без нее можно обойтись. Но со временем, когда приложение становится все больше и больше, за ним все сложнее ухаживать. MVC позволяет намного упростить этот процесс. Пример из реальной жизни. Можно заставить человека ездить за товаром, потом разгружать на склад, а после этот человек становится на кассу и начинает его продавать. А если этот человек захочет уволиться, то придется искать другого, кто все это умеет делать. Неудобно, да? А ведь моджно поставить трех людей выполнять эти функции. Один является доставщиком товара, другой грузчиком, третий продавцом. И если кто-то хочет уволится, то намного проще найти ему замену. Идея mvc - каждый делает только то, что требуется от данного элемента. В сайтостроение, например, человек делает запрос( у нас интернет магазин), он хочет увидеть все товары, которые являются новинками и стоят меньше 10 000. Запрос посылается на сервер, после в действие вступает логика приложения или по другому Контроллер(Controller). Он понимает, что необходимо получить все товары-новинки с ценой меньше 10000 рублей. Контроллер идет в офис Модели (Model) и просит найти на складе(виртуальном) все товары, попадающие под условия выборки. Модель ищет, находит и передает в руки Контроллеру. После довольный контроллер имеющий у себя где нибудь в массиве список этих товаров с их свойствами желает показать пользователю эти товары на страницы. Но контроллер не умеет показывать. Он умеет только хозяйничать, да командовать. Поэтому Контроллер вызывает бедного Вида(View) и приказывает забрать у него данные и показать пользователю. Вид забрав товары выкладывает так, сказано в файле вьюшки. После пользователь видит, то что хотел. Огромный плюс - если мы хотим сменить View, мы просто меняем View, а Контроллер и Модель остаются прежними.
    Ответ написан
    Комментировать
  • На сколько правильна реализация такой авторизации?

    @ssrdop
    Если серьезный проект, то куки могут украсть плохие люди) В этом случае можно воспользоваться сессиями) Их посложнее украсть.
    Ответ написан
  • Как создать простейшую авторизацию на сайте?

    @ssrdop
    Если в Php совершенно не шарите, то используйте какую нибудь cms, типа modx. Ее все фронтэндщики хвалят. А если Хотите сами написать систему авторизации на php, то придется, во первых много время на изучения потратить + БД и в конечном итоге все будет заключаться в проверке есть ли запись логин + пароль в БД и если все совпадает, то открывать, например, сессию с уникальным ключом для каждого пользователя.
    Ответ написан
  • Админ-панель. С чего начать?

    @ssrdop
    На самом деле Админ панель это ограниченная часть сайта, вход в которую может осуществлять только, например, админ. Остальным пользователям запрещено. Если говорить про php и mysql, то мы заходим в меню входа в админку( обыно это форма с двумя полями логин и пароль), после обрабатывает форму, т. е ищем в базе данных пользователя с таким же логином и паролем, если есть, то мы должны дать сайту понять, что теперь этот пользователь может заходить в админку. Для этого можно создать сессию с определенным именем,а лучше в сессию записать случайную строку и в базу данных ее же записать. И каждый раз проверять есть ли в базе сессия с такой же строкой как и в базе, если есть то это админ. Вообще если ты на начальном уровне, то почитай статьи вот этого парня lifeexample.ru/php-primeryi-skriptov/pishem-intern... Там он делает интернет магазин. А еще есть курс от сайта webformyself "корпоративный сайт под ключ", можно его найти, скажем так, если постараться) Там вообще строится на ооп. Также хороший курс для понимания это курс geekbrains php. А после можно изучить фреймворк laravel, он простой на осовение и после еще и еще расти))
    Ответ написан
    4 комментария
  • Как вывести значени select из базы данных при редактировании?

    @ssrdop
    Пусть вы достали из базы данных в переменную $select. Т.е d в переменной $select стоит значение из базы.
    
    Далее для вывода у тебя должен быть массив $options, в котором у тебя будут ключ и значение option.
    Например $options = array(0 =>  'First' , 1 => "Second" ) и так далее.
    
    Далее всего лишь используем цикл:
    <select name="status" class="select_option input_form">
    Foreach($options as $key => $value){
    if($select == $key){
    <option value="<?=$key?>" "selected"><?=$value;?></option>
    }
    else{
    <option value="<?=$key?>"><?=$value;?></option>
    }
    }
    </select>
    Ответ написан
  • Как сделать дерево из 2х таблиц?

    @ssrdop
    Но ведь можно держать все в одной таблице и это будет правильно. А если однородную информацию разделять на несколько таблиц, то это не хорошо в плане и производительности в будущем и удобства. Но если Вам нужно это исключительно для "поковыряться", то в одной таблице создайте поля id, comment, а во второй id, parent_id, comment.
    В parent_id указывайте id родителя из первой талибцы.
    Ответ написан
    8 комментариев
  • Где можно попрактиковаться в php?

    @ssrdop
    Я тебе точно расскажу что надо делать. Первое это сделать свою cms. Лучший вариант это постараться сделать интернет магазин, сначала без javascripta, а потом добавить немного ajax для выполнения всех основных функций, но уже без перезагрузки.
    Перед этим изучи что такое архитектура mvc. Для соединения с базой данных используй pdo. Пусть твой код изначально будет далек от совершенства, но это дает очень много понимания. Реального понимания, а не абстрактного. После уже можно изучить работу простого движка на примере того же laravel.

    Вот хороший ресурс по примерному наброску твоей cms lifeexample.ru/php-primeryi-skriptov/pishem-intern... Важно чтобы ты разобрался в каждом шаге и попробовал потом это усовершенствовать. По каждому интересующему тебя вопросу ищи в интернете решения и сравнивай почему они сделали так или иначе. Вообщем успехов тебе. Главное не сдаваться.
    Ответ написан
    Комментировать
  • Как выполнить PHP скрипт, если форма подгружает javascript?

    @ssrdop
    Используй ajax для обработки php скриптом.
    Ответ написан
    Комментировать