X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

5 страниц V   1 2 3 4 5 >
Открыть тему
Тема закрыта
> Архитектура веб-приложений
Bustle_hb
Bustle_hb
Topic Starter сообщение 23.12.2011, 1:08; Ответить: Bustle_hb
Сообщение #1


Собственно интересует эта тема. MVC применять ещё сложно. Других не знаю.
Так как я сейчас пишу это ужас получится. Куча одинаковых файлов.
Сайт который я сейчас делаю состиит с такой структуры:
[IMG]http://my.jetscreenshot.com/demo/m_20111222-stx6-36kb.jpg[/IMG]
При этом у сайта банальная функциональность:
-Статья как страницы
-Превю статьи на главной и по ссылке "Читать дальше" полная статья
-Коментирования
Все.
А в админке собственно можно добавить/редактировать/удалить статьи/статьи как страницы
А хочется писать хороший код, а не говнокод.
В виду этого буду благодарен за любые советы/ссылки по поводу построения архитектуры. Без использования OOП
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
NoDrum
NoDrum
сообщение 23.12.2011, 1:23; Ответить: NoDrum
Сообщение #2


Делаем единственный доступный из веб скрипт index.php. Он подключает файлы конфигурации (config.php, db.php, etc...), файл с общими дополнительными функциями, шаблонизатор. Затем, в зависимости от запроса подключает файл с необходимым функционалом (news.php, comments.php, etc). Затем он генерирует выходной html код.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bustle_hb
Bustle_hb
Topic Starter сообщение 23.12.2011, 2:00; Ответить: Bustle_hb
Сообщение #3


NoDrum, спасибо за совет.
Попробую переделать. Времени у меня ещё до утра 6 часов. :sarcastic:
Может успею...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bustle_hb
Bustle_hb
Topic Starter сообщение 23.12.2011, 4:09; Ответить: Bustle_hb
Сообщение #4


Сделал малую часть. Но если есть у кого время, гляньте верно ли я разделяю логику. Код в архиве
[attachment=38435:wschool.zip]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
LifeUP
LifeUP
сообщение 23.12.2011, 11:09; Ответить: LifeUP
Сообщение #5


codeigniter начните учить.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bustle_hb
Bustle_hb
Topic Starter сообщение 23.12.2011, 11:32; Ответить: Bustle_hb
Сообщение #6


LifeUP, Нафиг он мне здался? пхп нужно хорошо для начала выучить. Да и устарелый он.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 23.12.2011, 12:32; Ответить: alexdrob
Сообщение #7


(Nikk-name @ 23.12.2011, 07:09) *
Сделал малую часть. Но если есть у кого время, гляньте верно ли я разделяю логику. Код в архиве

Я открыл главную страницу, и уже могу сказать что сделано не верно.
первым же делом вы что делаете?
[PHP]
// Вывод всех статей
$articles = get_all_articles();[/PHP]
Зачем?

у вас могут быть новости например и там не нужны все статьи! а так как обращение идёт через index.php к любой странице, получается вы всегда будете выбирать все статьи.

да и даже вот когда вы одну статью выводите, всё равно у вас будут выбраны все статьи, для чего? просто для того что бы нагрузить сервер?

какой смысл тут
[PHP]$row = mysql_fetch_assoc($result);
$articles[] = $row;[/PHP]
почему не сделать просто?
[PHP] $articles[] = mysql_fetch_assoc($result);[/PHP]

[PHP]$t = "SELECT * FROM msgs WHERE id = '%d'";

$query = sprintf($t, $id_article);[/PHP]
а это вообще интересно:)
ну раз вы пытаетесь сделать вид использования параметров, то почему бы тогда сразу не отказатся от старых и медленных функций mysql_* и не воспользоваться PDO или mysqli? там же для этого есть специальные методы позволяющие за одно защитится от sql иньекций.
[PHP]<?=SITE_URL?>[/PHP]
такая конструкция может не работать на некоторых хостингах, пишите сразу [PHP]<?php echo SITE_URL ?>[/PHP]
этим вы обеспечите большую независимость от конфигурации сервера.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
digi_hb
digi_hb
сообщение 23.12.2011, 12:34; Ответить: digi_hb
Сообщение #8


пхп конечно надо... но современные реалии таковы, что ООП весьма распространённая практика и лучше от него не отталкиваться, а освоить :)

ЗЫ: код ваш глянул :) честно говоря, без ООП даже оценить уже что-то трудно... ожидается уже увидеть некую реализацию паттерна MVC в каком-то более менее очевидном виде...
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 23.12.2011, 12:36; Ответить: alexdrob
Сообщение #9


(Nikk-name @ 23.12.2011, 04:08) *
Без использования OOП

а чем ооп не устраивает? не обязательно знать всех тонкостей ооп что бы начать его использовать. Вот как раз будете использовать и учить за одно.
разбейте просто сайт на логические составляющие, напрмиер
шаблонизатор вынесите в класс template
функции для работы с бд - в лкасс DB
функции которые получают адрес и параметры get или post, и определяют какой файл запустить - url или router или ещё как
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Bustle_hb
Bustle_hb
Topic Starter сообщение 23.12.2011, 13:47; Ответить: Bustle_hb
Сообщение #10


(alexdrob @ 23.12.2011, 15:36) *
а чем ооп не устраивает? не обязательно знать всех тонкостей ооп что бы начать его использовать. Вот как раз будете использовать и учить за одно.
разбейте просто сайт на логические составляющие, напрмиер
шаблонизатор вынесите в класс template
функции для работы с бд - в лкасс DB
функции которые получают адрес и параметры get или post, и определяют какой файл запустить - url или router или ещё как

Меня ООП всем устраивает. Но времени учить и паралельно писать у меня нет. Я делаю этот сай не для себя, а для НР в МАНУ. Сайт будет просто как пример.
(alexdrob @ 23.12.2011, 15:32) *
то почему бы тогда сразу не отказатся от старых и медленных функций mysql_* и не воспользоваться PDO или mysqli? там же для этого есть специальные методы позволяющие за одно защитится от sql иньекций.

Опять же про них надо прочитать и понять. А мне на завтра нужно уже готовый сайт. В будущем буду использовать.
(alexdrob @ 23.12.2011, 15:32) *
этим вы обеспечите большую независимость от конфигурации сервера.

Понял.
(alexdrob @ 23.12.2011, 15:32) *
у вас могут быть новости например и там не нужны все статьи! а так как обращение идёт через index.php к любой странице, получается вы всегда будете выбирать все статьи.

да и даже вот когда вы одну статью выводите, всё равно у вас будут выбраны все статьи, для чего? просто для того что бы нагрузить сервер?

какой смысл тут

ну у меня все статьи выбираются для того , чтоб сгенерировать меню. На главной сейчас выводится статья с ид=10
на остальных по переходе по ссылке дается ид = ид в БД
и в шаблоне просто выводится текст статьи с ид ссылки
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
5 страниц V   1 2 3 4 5 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) <Braga/> Создание Telegram-ботов, web-приложений, крипто-бирж, сайтов.
2 newbraga 1796 10.3.2024, 22:04
автор: newbraga
Открытая тема (нет новых ответов) Куплю сайт или домен веб студии с историей от 1 года
0 cresh 1280 25.12.2023, 21:10
автор: cresh
Открытая тема (нет новых ответов) Тема имеет прикрепленные файлыВеб дизайн сайтов с душой | Графический дизайн
На связи ежедневно без выходных с 10 до 20 по Мск
15 GigArt 7724 11.12.2023, 13:36
автор: GigArt
Открытая тема (нет новых ответов) Написание софта, разработка сайтов, моб. приложений и игр
3 BurzhuyXXi 2426 10.11.2023, 19:51
автор: BurzhuyXXi
Открытая тема (нет новых ответов) Аналог YouDO: Android приложения, веб + backend/api
6 kwork 6628 28.8.2023, 20:04
автор: mikmaster22


 



RSS Текстовая версия Сейчас: 25.4.2024, 8:36
Дизайн