Вы не хотите делать это контроллером.Вы должны создать это как библиотеку.Затем вы должны загрузить библиотеку, когда это необходимо.Вы можете передавать значения в библиотеку электронной почты с URL вызывающего контроллера
читать эти страницы
http://codeigniter.com/user_guide/general/creating_libraries.html
http://codeigniter.com/user_guide/general/controllers.html#passinguri
http://codeigniter.com/user_guide/general/controllers.html#private
Структура CI немного специфична, и чем ближе вы к ней привязываетесь, тем больше она вам понравится.
библиотеки - это ваши функции
конструкция контроллеровпредставления, использующие данные из моделей url и ваших библиотек
представления отображают ваши построенные данные
/////////emaillibrary.php
class email {
function email{
}
function do_some_stuff($spoon){
/////// dance
}
}
//// email controller
class emailcontroller extends Controller{
function sendMail($spoon){ /* <------ this is going to pass any info in the url down into your controller so if some one does www.myite.com/index.php/emailcontroller/sendmail/car $spoon will equal car
$this->load->library('email'); */
$this->email->do_some_stuff($spoon);
}
}
Также, если вам нужна функция, специфичная для вашего контроллера и не используемая где-либо еще вместо этогоиз библиотеки вы создадите функцию с подчеркиванием
и в качестве совершенно не по теме совета, когда вы будете выполнять вызовы БД, используйте модели независимо от того, насколько прост вызов БД.Уверяю вас, вы найдете меня обнять.