我如何使用Zend框架将用户名和密码值插入数据库。
以及如何使用zend框架从数据库中获取值。
您是否了解使用PHP处理数据库的知识?在进入框架之前,您绝对应该start there。当您基本了解PHP和数据库如何交互时,将其过渡到Zend的良好框架应该不会太困难。
Zend Framework手册对everything it can do with databases有相当全面的概述。
/ 插入 // ***我假设您正在通过控制器传递数据* /
class Application_Model_YourModelName extends Zend_Db_Table_Abstract {
private static $_instance = null;
protected $_name = 'YourModelName';
public static function getinstance() {
if (self::$_instance == null)
self::$_instance = new Application_Model_YourModelName();
return self::$_instance;
}
public function insertFunction(){
if(func_num_args()>0){
$userName = func_get_arg(0); // or some index if wanna pass through key value pair
$password = md5(func_get_arg(1));
$data = array('userName'=>$userName, 'password'=>$password);
$insert = $this->insert($data);
}
}
public function fetchFunction(){
$sql = $this->select()
->where("*Your condition*")
;
$result = $this->getAdapter->fetchAll(sql);
}
在安全方面,使用md5函数不够安全,您可能要寻找bcrypt哈希算法。这是相同的链接:http://framework.zend.com/manual/current/en/modules/zend.crypt.password.html
/**
*
*To insert your values
*
* Here $uname and $password are values dynamically
*/
$db = new Zend_Db(....);
$data = array(
'vUserName'=>$uname,
'vPassword'=>md5($pwd)
);
$db->insert('tablename',$data);
/*
*
*To get the values
*
*/
$sql = "SELECT * FROM <TABLENAME> WHERE vUserName = '".$uname."'";
$data = $db->fetchAll($sql);
return $data;
$db = new Zend_Db(....);
$data = array('username'=>'thomaschaaf', 'password'= md5('secret'));
$db->insert('field', $data);