Пятница, 29 Марта 2024, 12:00

Приветствую Вас Гость

[ Новые сообщения · Игроделы · Правила · Поиск ]
  • Страница 1 из 1
  • 1
Форум игроделов » Дополнительные темы » Вебмастеринг » Создание Сайта-Блога с нуля
Создание Сайта-Блога с нуля
vicu2010Дата: Суббота, 16 Февраля 2013, 19:11 | Сообщение # 1
Сейчас нет на сайте
Итак, я делаю сайт.

* Разбил сайт по частям -- Header, Content и Bottom ( шапки, контент и низ)
* Каждая часть описана в своих файлах -- header.html , content.html и bottom.html

Как собрать эти части, чтобы на index_*name*.html выдавало все части вместе. Ну вы понели да?

Это я сделал, чтобы в случае желания отредактировать одну из частей, не пришлось делать это во всех файлах сайта.
Да, я нуб в сайтостроении с нуля, раньше юзал готовые кмс. А сейчас понадобилось построить собственную.

Если есть желающие помочь с написанием сайта, Обращайтесь в скайп: aora2009



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic
ALEKS333Дата: Суббота, 16 Февраля 2013, 19:15 | Сообщение # 2
частый гость
Сейчас нет на сайте
тебе так просто это в html файле не реализовать, нужно или шаблонизатор писать, или при помощи гравного файла index.php реализовать(это легче)
vicu2010Дата: Суббота, 16 Февраля 2013, 19:22 | Сообщение # 3
Сейчас нет на сайте
ALEKS333, Я догадывался, гуглю уже 3 часа - но ничего хорошего не нахожу одни уроки по вордпресс.

Ты можешь подкинуть материалы для изучения?



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic
ALEKS333Дата: Суббота, 16 Февраля 2013, 19:25 | Сообщение # 4
частый гость
Сейчас нет на сайте
Цитата (vicu2010)
Ты можешь подкинуть материалы для изучения?

для изучения ничего нет, но как реализовать при помощи index.php думаю подскажу как, если что, мой скайп aleks_vast
TimKruzДата: Суббота, 16 Февраля 2013, 20:49 | Сообщение # 5
старожил
Сейчас нет на сайте
Цитата (vicu2010)
Как собрать эти части, чтобы на index_*name*.html выдавало все части вместе. Ну вы понели да?

Теоретически, можно было бы сделать и так, правда, я не знаю, какой веб-сервер такое умеет и на каком скриптовом языке с ним общаться. sad Можно, конечно, легко написать свой собственный веб-сервер, но ведь тебе нужно решение для уже существующих серверов...
Поэтому, на мой взгляд, проще сделать как index.php?page=номер-или-название, т.е. отправляем get-запрос php-скрипту, который генерирует требуемую страницу.
Заголовок и подвал страницы можно вывести командой @readfile('header.html'); и @readfile('bottom.html'); соответственно, или прикрепить командой include, если у тебя файлы header.html и bottom.html тоже будут на php написаны.

Цитата (vicu2010)
Это я сделал, чтобы в случае желания отредактировать одну из частей, не пришлось делать это во всех файлах сайта.

А я себе сделал всего один index.html, который включает в себя весь сайт (только index.css отдельно) и генерирует любые страницы, правда, внешние файлы всё равно есть, но их редактировать вручную не нужно, т.к. они самим index.html обрабатываются. Конечно, в огромной странице смешанного html+php чёрт ногу сломит, зато никаких лишних файлов. biggrin Можно ещё весь основной текст и куски html вынести в отдельные файлы, чтобы можно было редактировать дизайн и надписи отдельно от кода, тогда получится движок-в-одном-файле, который, в идеале, не нужно редактировать...
А собственно запрос страниц у меня выглядит так: html://example.com/?t=номер_раздела&p=номер_страницы&m=номер_материала&d=номер_действия, при чём переменные tpmd, в идеале, описывают любую страницу сайта и любой запрос пользователя...




Сообщение отредактировал TimKruz - Суббота, 16 Февраля 2013, 20:59
GronzoДата: Суббота, 16 Февраля 2013, 21:38 | Сообщение # 6
почетный гость
Сейчас нет на сайте
С таким подходом советую использовать не wordpress, а MODx.
я реально забыл многие проблемные места когда перенес всю веб-разработку на данную cms


Скорость перебора паролей прямо пропорциональна квадрату температуры утюга
romgermanДата: Воскресенье, 17 Февраля 2013, 01:26 | Сообщение # 7
старожил
Сейчас нет на сайте
Нужно сделать не footer/header/content.html, а тоже самое, только с расширением PHP. Потом сделать главный файл index.php и вставлять все файлы по средствам include('header.php'); вроде так. В гугле всё есть, просто нужно правильно составить запрос. А вообще бери WordPress, Drupal и прочие движки и делай просто свою тему. А так, учи PHP +MySQL и будет тебе счастье.
friendДата: Воскресенье, 17 Февраля 2013, 10:45 | Сообщение # 8
почетный гость
Сейчас нет на сайте
Цитата (romgerman)
А вообще бери WordPress, Drupal

друпал еще может быть, ты видел блоги с большой посещаемостью на wp? они тормозят ппц как, да и вообще wp превратился уже хз во что, есть куча вариантов альтернативе wp, нужно просто хорошенько поискать (разумеется не в рашке)
vicu2010Дата: Вторник, 19 Февраля 2013, 01:23 | Сообщение # 9
Сейчас нет на сайте
Спасибо пацаны, но ALEKS333 мне уже подсказал про include в скайпе. Однако я уже перешел с php include на mysql include т.е. теперь сайт у меня как у ТимаКруза, весь сайт в index.php. Всю инфу храню в БД и оттуда ставлю на нужное место на странице.

Теперь появлся новый вопрос, однако я даже теоретично не знаю как это реализовать.

Допустим у меня есть БД. У каждой страницы своя строка и свойства, вот так:
page1 | title | descript
page2 | title | descript
page3 | title | descript


Теперь я хочу сделать админку своего сайта. Она сможет добавлять новые страницы, т.е. мне не нужно будет лезть в ПХПмуАдмин, чтобы добавлять новые страницы, а это будет доступно из админки и в очень простом виде.

Как вообще реализовать добавление строки в СУБД?

Буду рад хотя-бы наводкам.



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic
SteizДата: Вторник, 19 Февраля 2013, 03:28 | Сообщение # 10
echo "PHP,MYSQL,JAVASCRIPT,HTML,CSS";
Сейчас нет на сайте
PHP:
Код

<?
$db = mysql_connect ("localhost","root","");
mysql_select_db ("test",$db);
if($_GET["act"] == "add"){
if($_POST["title"] && $_POST["descript"]){
$sql="INSERT INTO pages (title, descript)
VALUES
('$_POST[title]','$_POST[descript]')";

if (!mysql_query($sql,$db))
   {
   die('Error: ' . mysql_error());
   }
die("Все ок<br><a href='?aсt=add'>Назад</a>");
}
die ('  
   <FORM action="admin.php?act=add" method="post">
     <P>
     title: <INPUT type="text" name="title"><BR>
     descript: <textarea name="descript" cols="40" rows="3">descript</textarea><BR>
     <INPUT type="submit" value="Добавить">  
     </P>
  </FORM>');
}
?>
<a href="?act=add">Добавить страницу</a>

Структура:
Код

CREATE TABLE IF NOT EXISTS `pages` (
    `id` int(11) NOT NULL AUTO_INCREMENT,
    `title` text NOT NULL,
    `descript` longtext NOT NULL,
    PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=cp1251 AUTO_INCREMENT=4 ;


Освоил:
3d max,blender
painter,photoshop,sketchbook,gimp
C++,C#,javascript,php,html,css,mysql
unity3d,udk,ue


Сообщение отредактировал Steiz - Вторник, 19 Февраля 2013, 03:43
vinurdДата: Вторник, 19 Февраля 2013, 06:05 | Сообщение # 11
постоянный участник
Сейчас нет на сайте
А чем DLE не устраивает? даже если его не хотеть у него приятный и понимаемый код-можно что то взять себе и переделать. Особенно у них приятно сделаны шаблоны. Неплохая скорость с медленными серверами, в админке есть управление по отключению всего не нужного. Большинство сайтов, по новостным сми, блогам и прочему построены на принципе DLE, либо на нем самом лицензия на год не дорогая.

Добавлено (19.02.2013, 06:05)
---------------------------------------------
вот например социальная сеть сайта коммунистической партии, делал я. переработал многие модули и совместил с друг другом. сайт

vicu2010Дата: Суббота, 23 Февраля 2013, 22:31 | Сообщение # 12
Сейчас нет на сайте
Steiz, Спасибо за скрипты, опробую.

vinurd, не брал готовые КМС ибо мне не сайт как таковой нужен. Мне нужен именно самописный сайт, для себя и чисто для навыков. Я часто использовал КМС, но это не тот случай) Спасибо.

Добавлено (23.02.2013, 22:31)
---------------------------------------------
Привет, очередной вопрос. У меня уже имеются много страниц, но все они в одной таблице articles. Тблица имеет 10 параметров, так в зависимости от параметров я определяю какого рода эта страница(блоговая, главная, чатовая, проектовая и т.п.). Но есть проблема, каждая станица имеет одноформенную ссылку(урл), типа:
site/index.php&index.php?pagina=4
site/index.php&index.php?pagina=5
site/index.php&index.php?pagina=6 и тп

Как сделать чтобы было типа ?category=pagina=2 . У меня имеется свойство категория у таблицы.

Вот код как мне кажется отвечающий за вывод адресной строки:
Код
<?php
include ('db_conn.php');
include ('functions.php');
if(!isset($_GET['pagina'])){
$pagina = '1';
}
else{
$pagina = addslashes(strip_tags(trim($_GET['pagina'])));
}
$art_data = GetDataArt($pagina);


art_data[9] у мну будет выводить имя категории.



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic


Сообщение отредактировал vicu2010 - Суббота, 23 Февраля 2013, 22:32
lvovandДата: Суббота, 23 Февраля 2013, 23:00 | Сообщение # 13
старожил
Сейчас нет на сайте
можно в .htaccess

...
RewriteRule ^category/([0-9]+)$ index.php?pagina=$1 [QSA,L]
...
и ссылка будет типа site.ru/category/5

$pagina = addslashes(strip_tags(trim($_GET['pagina'])));
если число, то проще просто взять $pagina = intval($_GET['pagina']);


Разработка и продвижение сайтов. Дизайн
vicu2010Дата: Суббота, 23 Февраля 2013, 23:18 | Сообщение # 14
Сейчас нет на сайте
C htacces не сойдёт ибо категории могут быть разными....

Вот мой файл index.php :
Код
<?php
include ('db_conn.php');
include ('functions.php');
if(!isset($_GET['pagina'])){
     $pagina = '1';
}
else{
     $pagina = addslashes(strip_tags(trim($_GET['pagina'])));
}
$art_data = GetDataArt($pagina);
?>

functions.php:
Код
<?php
function GetDataArt($pagina){
   $sel = "SELECT `title`,`page_title`,`meta_d`,`meta_kw`,`content`, `page_date`, `mini_cont`, `imagine`, `visited`, `category`  FROM `articles` WHERE `id` = '$pagina' LIMIT 2";
   $query = mysql_query($sel);
   if(!$query){
echo(':(');
   }
   else{
if(mysql_num_rows($query)>0){
   $res = mysql_fetch_array($query);
   $title = $res['title'];
   $page_title = $res['page_title'];
   $meta_kw = $res['meta_kw'];
   $meta_d = $res['meta_d'];
   $content = $res['content'];
   $page_date = $res['page_date'];
   $mini_cont = $res['mini_cont'];
   $imagine = $res['imagine'];
   $visited = $res['visited'];
   $category = $res['category'];
}
else{
   $title = 'К сожалению, такая страница отсутствует на данном сайте!';
   $page_title = 'К сожалению, такая страница отсутствует на данном сайте!';
   $meta_kw = $meta_d = $content = '';
}
$data_arr = array($title, $page_title, $meta_kw, $meta_d, $content, $page_date, $mini_cont, $imagine, $visited, $category);
return $data_arr;
   }
}
?>



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic
lvovandДата: Суббота, 23 Февраля 2013, 23:53 | Сообщение # 15
старожил
Сейчас нет на сайте
если категории разные, можно же и две переменных отработать

^([a-z]+)/([0-9]+)$ index.php?category=$1&pagina=$2 [QSA,L]


Разработка и продвижение сайтов. Дизайн
vicu2010Дата: Среда, 27 Февраля 2013, 18:07 | Сообщение # 16
Сейчас нет на сайте
lvovand, проблема то не с созданием чпу, а с созданием самих категорий в пхп.

Добавлено (27.02.2013, 18:07)
---------------------------------------------
Вывод статей из БД по дате. Я уже сделал вывод по айди, но нужно по дате, вот мой код:
if(mysql_num_rows($query)>0){
while($res = mysql_fetch_array($query)){ ... }



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic
SteizДата: Среда, 27 Февраля 2013, 18:31 | Сообщение # 17
echo "PHP,MYSQL,JAVASCRIPT,HTML,CSS";
Сейчас нет на сайте
SELECT ...... ORDER BY date DESC

Освоил:
3d max,blender
painter,photoshop,sketchbook,gimp
C++,C#,javascript,php,html,css,mysql
unity3d,udk,ue
vicu2010Дата: Среда, 27 Февраля 2013, 18:50 | Сообщение # 18
Сейчас нет на сайте
Steiz, а можно это как-то в цикл поставить через пхп, чтобы на страницу все статьи вывести? как у меня, только с ордерингом.

Добавлено (27.02.2013, 18:50)
---------------------------------------------
Получилось) Огромное спасибо!



Программист Ruby on Rails / COBOL | Веб-дизайнер(Bootstrap, HTML5, JS) | Викверс на Construct 2 / Classic
DorfeyДата: Четверг, 04 Апреля 2013, 15:04 | Сообщение # 19
был не раз
Сейчас нет на сайте
возьми простенькую cms для блога и не парься.

если хочешь писать код, то возьми фреймворк, для начала codeigniter подойдет.
Форум игроделов » Дополнительные темы » Вебмастеринг » Создание Сайта-Блога с нуля
  • Страница 1 из 1
  • 1
Поиск:

Все права сохранены. GcUp.ru © 2008-2024 Рейтинг