我还在学习PHP和CodeIgniter,但我正在尝试设置一个电子邮件控制器。唯一的问题是,大多数教程都展示了如何设置email.php控制器,但硬编码了电子邮件地址和消息。
在我正在进行的项目中,我将发送许多内容的电子邮件(注册,密码重置等)。
如何设置电子邮件控制器以接受参数以及如何从其他控制器加载?
答案 0 :(得分:2)
电子邮件控制器?我想你想要一个可以发送电子邮件的控制器吗?如果是,您可以使用控制器中提供的CI电子邮件库(http://codeigniter.com/user_guide/libraries/email.html)。
答案 1 :(得分:2)
你不想让它成为一个控制器。您应该将其创建为库。然后,您将在需要时加载库。您可以从调用控制器的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);
}
}
此外,如果您需要一个特定于您的控制器的功能,并且不使用任何其他地方而不是库,您将创建一个带下划线的函数
当你进行数据库调用时,作为一个完整的主题建议,无论数据库调用多么简单,都要使用模型。我向你保证,你会来找我拥抱。