Tralasciando la discutibile scelta di utilizzare codeigniter, ma immagino che per la semplicità d'utilizzo faccia comodo a chi non saprebbe neppure come caricare un package.
Categorie di cosa? Stiamo parlando di una specie di forum?
Apparte che va nella sezione database.
codice:
CREATE TABLE `cats` (
`id` TINYINT UNSIGNED AUTO_INCREMENT,
`name` TEXT,
`order` TINYINT UNSIGNED NOT NULL DEFAULT '0' COMMENT 'Posizione della categoria',
PRIMARY KEY(`id`)
)ENGINE=innoDB;
CREATE TABLE `posts` (
`id` INT UNSIGNED AUTO_INCREMENT,
`title` VARCHAR(255) NOT NULL DEFAULT '',
`content` TEXT,
`cat` INT UNSIGNED NOT NULL DEFAULT '0',
`date` DATETIME COMMENT 'Data di pubblicazione, utilizzata anche per il sorting',
PRIMARY KEY(`id`),
INDEX(`cat`),
FOREIGN KEY(`cat`) REFERENCES `cats`(`id`)
ON DELETE CASCADE
)ENGINE=innoDB;