2012-03-11 46 views
0

我有一個模型 register.php(在應用程序/模型/ register.php)MVC INSERT INTO套牢凡從這裏走

<?PHP 

// Load the [default] db group 
$this->load->database(); 

// Get Input from init form, sanitize, plop into variables. 
class Register extends Model{ 

    function formModel(){ 
    //load parent constructor 
    parent::Model(); 
    } 

    function sanitizeInput(){ 
     var $name = mysql_real_escape_string($_POST['fullname']); 
     var $email = mysql_real_escape_string($_POST['email']); 
     var $pass = mysql_real_escape_string($_POST['password']); 
     var $dySalt = mt_rand(20,100); 
     var $pass = hash('sha512',$dySalt.$pass); 
    } 

    // Set form variables into object; define db table 
    $registeredObject = new getSanitizeNewRegistrant(); 
    $tbl = 'Fan'; 

    function SendRequestForData(){ 
     if{ 
     $this->db->insert($tbl,$object); 
     // .. redirect() 
     echo "Sent"; 
     } 
     else{ 
     echo "Oops, could not register you"; 
     } 
    } 



} 
?> 

我加載這個模型到控制器registerUsers .PHP(在應用程序/控制器/ registerUsers.php)

<?PHP 


$this->load->model('register'),'', TRUE); 


?> 

我很困惑我如何去從這裏view實現這一點?

+0

查看您的代碼後,我建議您通過codeigniter用戶指南並清除您的基本概念 – 2012-03-11 19:50:44

+0

請參閱更新的模型。你現在可以幫我嗎? – CodeTalk 2012-03-11 20:10:26

回答

1

MVC框架的工作原理如下:

模型與數據庫交互: 在這裏你想要把所有的函數做無非插入,然後從數據庫返回的數據/。

視圖是用戶看到的是: 在這裏你將有你的HTML頁面,讓您使用通過模型得到了數據的

控制器只需連接兩個: 控制器準備數據,使用模型與數據庫進行交互,並加載視圖供用戶查看

如果您的註冊模型中有一個函數registerUser(),您可以這樣做來實際在函數中使用它控制器:

$this->load->model('register'); // Load register model 
$return = $this->register->registerUser($_POST['username'], $_POST['email'], $_POST['password']); // Try to register the user to the database 
if($return === "TRUE") { 
    $this->load->view('success'); // Hooray! 
} 
else { 
    $this->load->view('fail'); // :(
} 

這裏,控制器加載寄存器模型,試圖使用模型中的registerUser()功能,節省了用戶名,電子郵件地址和密碼,並相應地加載正確的觀點。

很顯然,在將數據寫入數據庫之前,您首先需要清除$_POST數據和所有數據。這應該在控制器內完成。