Создание таблиц с помощью SQL
Пример создания таблицы для блогаCREATE TABLE `lenauto_db`.`data` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`title` VARCHAR( 255 ) NOT NULL ,
`name` VARCHAR( 50 ) NOT NULL ,
`contents` TEXT NOT NULL
) ENGINE = MYISAM
Пример создания названий
2 поля:
id int autoincrement ключевой
name varchar 255
CREATE TABLE `lenauto_db`.`cars` (
`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`title` VARCHAR( 255 ) NOT NULL
) ENGINE = MYISAM
Поля таблиц
Заголовки `title` VARCHAR( 255 ) NOT NULL
Имена `name` VARCHAR( 50 ) NOT NULL
Текст `contents` VARCHAR( 50 ) NOT NULL
База данных для блогов
лучше разделять большие объемы данных в отдельные таблицы:
заголовки, автор, время таблица1
тексты постов таблица2
комментарии постов таблица3
1) таблица постов
id not null primeri
title null 128 varchar
body null text
Делаем две таблицы
2) таблица комментариев
CREATE TABLE `lenauto_db`.`comments` (
`id` INT NOT NULL ,
`post_id` INT NULL ,
`author` VARCHAR( 50 ) NULL ,
`text` TEXT NULL ,
PRIMARY KEY ( `id` )
) ENGINE = MYISAM
Кэширование страниц
нужно добавить поле Date для страницы/поста которое управляет выводом из кэша
ALTER TABLE records ADD date INT NOT NULL
по ссылке подробно блог с кэшированием
при добавлении комментария
function comment_add()
{
// сбрасываем кэш
$this-> db-> where('id', $_POST['record_id']);
$this-> db-> update('records', array('date'=> 0));
$this-> db-> insert('comments',$_POST);
redirect('blog/comments/'.$_POST['record_id']);
}
перед показом страницы читаем время в $cachetime, если будит 0 то соответственно страница не будет читаться из кэша и будет заново сформирована.
function comments()
{
$id=$this-> uri-> segment(3);
// определяем необходимость кэширования
$query = $this-> db-> query('SELECT date FROM records WHERE id='.$id);
$cachetime = $query-> first_row()-> date;
$this-> db-> where('id', $id);
// устанавливаем кэш в ваньсуй
$this-> db-> update('records', array('date'=> 99999999));
$this-> output-> cache($cachetime);
$id=$this-> uri-> segment(3); // получаем номер записи блога из URL
}
обработчик здесь
Создаем базу данных планировщика
CREATE DATABASE `dplan`;
создаем таблицу
CREATE TABLE `tasks` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(20) DEFAULT NULL,
`description` text,
`tend` datetime DEFAULT NULL,
`tstart` datetime DEFAULT NULL,
`complit` tinyint(1) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251;
Настраиваем подключение к БД и ставим кодировку
$db['default']['char_set'] = "cp1251";
$db['default']['dbcollat'] = "cp1251_general_ci";
Комментарии
Отправить комментарий