Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107

Движок сайта

04.07.2016, 00:52. Показов 1477. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Получил хостинг, домен. Осталось сделать движок сайта.
Сайт представляет некую команду, называйте как хотите, которая занимается разработкой сайтов, продвижением сайтов, и прочим.
Начал делать движок. В этом топике буду публиковать обновления. Скажите новичку, который изучил основы PHP, как и что делать, чтобы было эффективнее.
Вот всё начало. Может и тут стоит что-то подправить?
Файл index.php:
PHP
1
2
3
4
5
<?php
require_once("config.php");
require_once("header.php");
require_once("footer.php");
?>
Файл config.php:
PHP
1
2
3
4
<?php
$title="John Studio";
$about="Сайт команды John Studio";
?>
Файл header.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?php
echo '<html>
<head>
<title>'.$title.'</title>
<meta http-equiv = "Content-type" content = "text/html; charset = windows-1251" />
<meta name = "description" content = "';
if($_SERVER['PHP_SELF']=="/index.php")
echo 'Разработка сайтов, продвижение, обучение и многое другое от John Studio';
echo '" />
<meta name = "keywords" content = "';
if($_SERVER['PHP_SELF']=="/index.php")
echo 'john studio, john, studio, john berden, berden john, константин рыжиков, рыжиков константин, разработка сайтов, реклама сайтов, разработка, продвижение, реклама, обучение, заказать сайт, сайт дешево';
echo '" />
<meta name = "robots" content = "index,follow" />
</head>
<body text="blue">
<div align="center">Добро пожаловать на сайт John Studio</div><br/>';
?>
Файл footer.php
PHP
1
2
3
4
5
<?php
echo '<br/>© 2016 John Studio
</body>
</html>';
?>
Не судите строго,пока начало. В дальнейшем будет меню, статьи и прочее.

Добавлено через 5 минут
Думаю сделать на страицах, где будут статьи, продолжение блоков if в description и keywords. Т.е, будет выбор из базы данных описания статьи и ключевых слов, и подставляться в мета теги.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.07.2016, 00:52
Ответы с готовыми решениями:

Возможно ли самому написать движок сайта?
Возможно ли самому написать движок сайта, и если дав сколько это займет времени?

Простейший движок сайта на PHP
Привет! Понадобилось написать движок для сайта на PHP. Сайт состоит из ~10 страниц с одинаковыми header и footer. Получился...

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

8
79 / 48 / 22
Регистрация: 30.06.2016
Сообщений: 187
04.07.2016, 01:24
Я начинал делать движки с роутера. (та часть, которая будет решать, что делать\показывать в зависимости от того какой URL-запроса)
0
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
04.07.2016, 08:43  [ТС]
Изменил header.php. Скажите, с описанием и keywords так хорошо я поступаю, или может как-то лучше переделать?
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
echo '<html>
<head>
<title>'.$title.'</title>
<meta http-equiv = "Content-type" content = "text/html; charset = windows-1251" />
<meta name = "description" content = "';
if($_SERVER['PHP_SELF']=="/index.php")
echo 'Разработка сайтов, продвижение, обучение и многое другое от John Studio';
if($_SERVER["PHP_SELF"]=="/article.php")
{
$res=mysql_query("SELECT description FROM articles WHERE id=$_GET['id']");
$a=mysql_fetch_assoc($res);
echo $a["discription"];
}
echo '" />
<meta name = "keywords" content = "';
if($_SERVER['PHP_SELF']=="/index.php")
echo 'john studio, john, studio, john berden, berden john, константин рыжиков, рыжиков константин, разработка сайтов, реклама сайтов, разработка, продвижение, реклама, обучение, заказать сайт, сайт дешево';
if($_SERVER["PHP_SELF"]=="/article.php")
{
$res1=mysql_query("SELECT keywords FROM articles WHERE id=$_GET['id']");
$b=mysql_fetch_assoc($res1);
echo $b["keywords"];
}
echo '" />
<meta name = "robots" content = "index,follow" />
</head>
<body text="blue">
<div align="center">Добро пожаловать на сайт John Studio</div><br/>';
?>
0
79 / 48 / 22
Регистрация: 30.06.2016
Сообщений: 187
04.07.2016, 09:24
Шаблон MVC описывает простой способ построения структуры приложения, целью которого является отделение бизнес-логики от пользовательского интерфейса. В результате, приложение легче масштабируется, тестируется, сопровождается и конечно же реализуется.




functions.php
PHP
1
2
3
4
5
function render($template,$data)
{
    extract($data);
    require tpl_dir.'/'.$template.'.tpl';
}
index.php
PHP
1
2
3
4
require 'functions.php';
$res=mysql_query("SELECT description FROM articles WHERE id=$_GET['id']");
$description=mysql_fetch_assoc($res);
render('index', array('description'=>$description));
tpl/index.tpl
PHP
1
2
3
4
html
body
div <?echo $description ?>
/html
если будете смешивать логику и хтмл, через пару тысяч строк кода, Вы захотите эту кашу переписать с нуля, т.к. разобраться в ней будет не реально

Добавлено через 6 минут
Во вторых если будете писать такие запросы, то Ваш сайт поломает самый зеленый скрипт кидди
PHP
1
$res=mysql_query("SELECT description FROM articles WHERE id=$_GET['id']");
Данные подставляемые в SQL запрос должны экранироваться, иначе злоумышленник может изменить его на свой вкус, как пожелает.

В третьих расширение mysql устарело еще n-лет назад и в новый версиях вроде бы даже удалено, используйте mysqli
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
04.07.2016, 09:28
Цитата Сообщение от jonikster Посмотреть сообщение
Скажите, с описанием и keywords так хорошо я поступаю, или может как-то лучше переделать?
Не хорошо. Даже ужасно. Очень не удобно работать когда все в один файл закинуто. Как минимум работу с бд надо вынести.
Похоже вы не знакомы с mvc, это стандарт.

p.s. рано вам еще движки писать. Лучше возьмите фреймворк, познакомитесь с различными архитектурами.
0
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
04.07.2016, 09:55  [ТС]
Я бы использовал просто CMS, но я незрячий, вид шаблона не вижу. Потому хочу всё делать сам, чтобы понимать, что будет выводиться. Да и у своего движка всё в разы быстрее.

Добавлено через 19 минут
Переписал Header.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
<?php
if($_SERVER['PHP_SELF']=="/index.php")
{
$desc="Разработка сайтов, продвижение, обучение и многое другое от John Studio";
$keywords="john studio, john, studio, john berden, berden john, константин рыжиков, рыжиков константин, разработка сайтов, реклама сайтов, разработка, продвижение, реклама, обучение, заказать сайт, сайт дешево";
}
else if($_SERVER["PHP_SELF"]=="/article.php")
{
$res=mysql_query("SELECT description FROM articles WHERE id='%s'", mysql_real_escape_string($_GET["id"]));
$a1=mysql_fetch_assoc($res);
$desc=$a1["discription"];
$res1=mysql_query("SELECT keywords FROM articles WHERE id='%s'", mysql_real_escape_string($_GET["id"]));
$a2=mysql_fetch_assoc($res1);
$keywords=$a2["keywords"];
}
echo '<html>
<head>
<title>'.$title.'</title>
<meta http-equiv = "Content-type" content = "text/html; charset = windows-1251" />
<meta name = "description" content = "'.$desc.'" />
<meta name = "keywords" content = "'.$keywords.'" />
<meta name = "robots" content = "index,follow" />
</head>
<body text="blue">
<div align="center">Добро пожаловать на сайт John Studio</div><br/>';
?>
Добавлено через 1 минуту
sadn3r, по поводу пару тыщ строк кода,ну я делаю не большой сайт. Мне это не грозит.
0
79 / 48 / 22
Регистрация: 30.06.2016
Сообщений: 187
04.07.2016, 10:06
уже лучше.
п.с.
Дело не в величине сайта, а в том чтобы сразу встать на правильный путь. А по поводу не больших сайтов - со временем и размер и функционал их всегда увеличивается. Вспомните каким был фейсбук.
0
55 / 13 / 2
Регистрация: 26.10.2014
Сообщений: 1,107
04.07.2016, 10:39  [ТС]
Ну Фейсбук появлялся когда я был в детстве... Потому не знаю каким он там был.
На сколько я знаю,он появился в 2006.А я родился в 2002))

Добавлено через 22 минуты
Очередная оптимизация header.php:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
if($_SERVER['PHP_SELF']=="/index.php")
{
$desc="Разработка сайтов, продвижение, обучение и многое другое от John Studio";
$keywords="john studio, john, studio, john berden, berden john, константин рыжиков, рыжиков константин, разработка сайтов, реклама сайтов, разработка, продвижение, реклама, обучение, заказать сайт, сайт дешево";
}
else if($_SERVER["PHP_SELF"]=="/article.php")
{
$res=mysql_query("SELECT * FROM articles WHERE id='%s'", mysql_real_escape_string($_GET["id"]));
$a=mysql_fetch_assoc($res);
$desc=$a["discription"];
$keywords=$a["keywords"];
}
echo '<html>
<head>
<title>'.$title.'</title>
<meta http-equiv = "Content-type" content = "text/html; charset = windows-1251" />
<meta name = "description" content = "'.$desc.'" />
<meta name = "keywords" content = "'.$keywords.'" />
<meta name = "robots" content = "index,follow" />
</head>
<body text="blue">
<div align="center">Добро пожаловать на сайт John Studio</div><br/>';
?>
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
04.07.2016, 10:50
Цитата Сообщение от jonikster Посмотреть сообщение
Я бы использовал просто CMS
А cms и не надо) Это совсем не то.
Цитата Сообщение от jonikster Посмотреть сообщение
Потому хочу всё делать сам, чтобы понимать, что будет выводиться
Похвально. Но если вы вот так без подготовки будете изобретать велосипед то это займет нереально много времени, переучиваться потом тяжелее. Да и вообще не в ту степь уходите...всякие mysql_query, верстка через атрибуты устарели сто лет назад.
Цитата Сообщение от jonikster Посмотреть сообщение
Да и у своего движка всё в разы быстрее
Потому что там ничего нету. А когда добавите необходимый минимум, получится тот же фреймворк.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.07.2016, 10:50
Помогаю со студенческими работами здесь

Как написать движок для сайта?
Я выучил хорошо PHP, MySQL, HTML, CSS. Шас взялся за написанием нескольких сайтов. Написать тупую страницу на html без проблем смогу. Я...

Нужен готовый движок для сайта, с данными возможностями: Форум, чат, доски объявлений + возможность обычного сайта информации
Нужен готовый движок для сайта, с данными возможностями: Форум, чат, доски объявлений + возможность обычного сайта информации, с широкой...

движок сайта
вот, появилось время на летних каникулах, и я решыл освоить jquery,ajax, и по возможности немножко flash. Так вот, для того, чтобы просто...

Движок сайта
Есть ли готовый движки сайтов с админкой на ASP.NET? Если да, то подскажите их.

ДВИЖОК САЙТА!
Решил написать движок для сайта! Кто чем может советом или добрым словом! Что должно быть или недолжно!


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru