Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 14.12.2018
Сообщений: 14

Создание блога

19.02.2019, 05:49. Показов 1368. Ответов 13

Студворк — интернет-сервис помощи студентам
Помогите примером. Есть статья https://habr.com/ru/sandbox/35748/ в которой создается главная страница с отображение всех статей. Как сделать отображение выбранной статьи по нажатию на ее название темы? Либо подскажите хорошее пособие по созданию блога.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.02.2019, 05:49
Ответы с готовыми решениями:

Создание блога
решил сделать некий блог, и есть несколько вопросов 1 как осуществляется сыллка "читать далее" 2 как сделать, что бы...

Страница блога со статьями в категории
Скажу сразу - в php только обучаюсь, вот только только начал и пока очень мало что понимаю., потому нужно хорошее пояснение или помощь в...

Вывод всех статей блога на главной странице с цитатами и миниатюрами
Добрый вечер всем, помогите вывести все статьи на главной с миниатюрами и цитатами, вставил одну статью вроде все получилось, но когда...

13
Заблокирован
19.02.2019, 06:04
PUD_Q, Готовый движок поставь
0
0 / 0 / 0
Регистрация: 14.12.2018
Сообщений: 14
19.02.2019, 06:21  [ТС]
Я только недавно начал обучение и хочу понять как все работает прежде чем переходить уже к решениям от фреймворков например.
0
Заблокирован
19.02.2019, 06:25
PUD_Q, Ловишь чрез глобальную переменную $_GET в залоговке ID поста, запрашиваешь этот ID у базы и выводишь массив с постом.

Добавлено через 2 минуты
PUD_Q, Запросы к базе только через регулярные выражения делай. Чтоб юзЪвери не сломали платформу.
1
0 / 0 / 0
Регистрация: 14.12.2018
Сообщений: 14
19.02.2019, 06:42  [ТС]
Цитата Сообщение от red rain Посмотреть сообщение
Ловишь чрез глобальную переменную $_GET в залоговке ID поста, запрашиваешь этот ID у базы и выводишь массив с постом.
Можно вас попросить пример, желательно связанный со статьей https://habr.com/ru/sandbox/35748 ?
0
Заблокирован
19.02.2019, 08:02
PUD_Q, Там всё есть вот она:
PHP
1
2
if( isset($_GET['page'])) {
// Да, пользователь что-то передал
1
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,884
19.02.2019, 08:44
Цитата Сообщение от PUD_Q Посмотреть сообщение
Я только недавно начал обучение и хочу понять как все работает прежде чем переходить уже к решениям от фреймворков например.
Можно взять каркас, выполняющий/позволяющий выполнить описанное в статье, но только на более продвинутом уровне в некоторых местах. Статья явно устаревшая. Одно использование расширения mysql чего стоит. Если бы вы знали, как раздражает, когда с этим приходит каждый второй новичок.
1
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
19.02.2019, 16:12
Цитата Сообщение от red rain Посмотреть сообщение
Запросы к базе только через регулярные выражения делай. Чтоб юзЪвери не сломали платформу.
Шта? Зачем здесь регулярные выражения? Что за ввод в заблуждение? Как вот этим можно сломать?
PHP
1
2
3
$id = (int) $_GET['post_id'];
$sql = "SELECT * FROM `posts` WHERE `id`=".$id;
// ...Выполняем запрос
Ну и кроме того, есть же подготовленные запросы.
0
Заблокирован
19.02.2019, 17:39
Зверушь, Если ты по ID выполняешь посик, а юзер шлёт тебе буквы либо цифры очень длинные. Регулярка вырежет только цифры и по нужной максимальной длинне.
0
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
19.02.2019, 17:47
red rain, чтобы юзер не послал, конкретно в данном случае оно приведется к типу int. Любая строка с буквами обратится в 0. Есть такой id у поста? Правильно, нет: показываем, что такого поста не существует.

В данном конкретном случае парсить значение параметра регуляркой совершенно не нужно.

Кроме того, ты написал, что сами запросы к базе должны идти регуляркой, типа WHERE REGEXP и т.д. Вот тут это точно лишнее, или объясняй правильно.
0
Заблокирован
19.02.2019, 17:53
Зверушь, Это дело привычки, нужно сразу привыкать что всё должно идти через регулярку. Это вообще не сложно, зато сразу избавляет от багов и говнокодинга.
0
 Аватар для Зверушь
461 / 369 / 94
Регистрация: 01.05.2010
Сообщений: 1,761
19.02.2019, 18:03
red rain, зачем всё? Только там где это уместно. Регулярные выражения - не единственный способ проверить параметр на валидность. Да часто его и не нужно проверять, как в примере с целочисленным id. Или вот у меня значением параметра будет любая строка. В какую регулярку его засовывать?))) И зачем?)
0
Эксперт PHP
3899 / 3237 / 1353
Регистрация: 01.08.2012
Сообщений: 10,909
19.02.2019, 19:01
Цитата Сообщение от red rain Посмотреть сообщение
нужно сразу привыкать что всё должно идти через регулярку
Отчасти согласен, но в первую очередь для валидации, а не вырезания всего и вся. Иначе это приведёт к подобным ошибкам:

Цитата Сообщение от red rain Посмотреть сообщение
Регулярка вырежет только цифры и по нужной максимальной длинне.
Тогда некорректная ссылка ?id=123abc и корректная ?id=123 будут отображать один и тот же контент.

Можно искать по полному соответствию, либо сначала проверять регуляркой валидность URL и в случае неудачи сразу возвращать ошибку 404.

Цитата Сообщение от red rain Посмотреть сообщение
Запросы к базе только через регулярные выражения делай. Чтоб юзЪвери не сломали платформу.
Запросы к базе надо делать через подготовленные запросы или экранирование, регулярки с этим не связаны.
0
1306 / 998 / 232
Регистрация: 01.10.2018
Сообщений: 3,884
19.02.2019, 22:13
Зверушь, такова практика. Используются для первичной валидации адресов и проверки попадания адресов под определенные шаблоны. Приведение к int - это для начинающих, чтобы им меньше объяснять, т.к. до реальной практики там редко доходит. Помимо одного параметра могут быть и другие, а ведь есть еще и путь. Да, часто шаблоны в виде регулярных выражений охватывают только путь, а к строке параметров применяются менее жесткие правила. В этом случае дубли со строкой параметров обычно закрываются от поисковых систем одним махом (специальным правилом в robots.txt или указанием в каноническом адресе только пути). В более строгих системах используют шаблоны, описывающие весь адрес, включая строку параметров.

Добавлено через 11 минут
Цитата Сообщение от Jodah Посмотреть сообщение
Запросы к базе надо делать через подготовленные запросы или экранирование, регулярки с этим не связаны.
Для фрагментов адреса можно обойтись без этого, если в описывающих эти фрагменты регулярных выражениях определены все допустимые символы и они не способны разрушить запрос. Естественно, при условии, что регулярное выражение (или его фрагмент) написано "навсегда" и не будет меняться в сторону "послабления безопасности".
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.02.2019, 22:13
Помогаю со студенческими работами здесь

Создание блога
Всем привет,создаю свой блог и дошло дело до статей,вопрос такой: Как писать статьи без создания кучи html файлов ?

Создание легкого блога
Здравствуйте, форумчане. Хочу спросить, как сделать такую страницу, где будет два поля: для заголовка и текста. После ввода в эти поля и...

Создание блога на PHP и MySQL
Здраствуйте. Я изучаю php и хотел би создать простенький блог в php mysql. Знает кто нибуть где можно прочитать пошаговую инструкцию по...

Создание админ панели (не для блога)
Собственно выучил html и css. Для себя начал делать проект, вроде как всё оформил, но не хватает автоматизации сайта. Встал вопрос о...

Стилизация блога на сайте
Как делаются стили для блога,комментариев,заголока,даты,автора на сайте. На кучах сайтов где есть регистрация,или комменты есть также и...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru