Autor | Zpráva | ||
---|---|---|---|
Bertram Profil |
#1 · Zasláno: 22. 3. 2011, 20:57:58
Zdravím,
Dvě níže uvedené funkce dělají to samé,je použití PDO opravdu tak krkolomné,nebo jenom nevím jak nato? Zkoušel jsem hledat,jestli neexistuje něco jako PDO::PARAM_ARRAY ,ale nic jsem nenašel. PDO: public function registerUser($data) { $sql = "INSERT INTO users (firstname,lastname,username,password,email) VALUES (:firstname, :lastname, :username, :password, :email)"; $objStatement = $this->getConn()->prepare($sql); $objStatement->bindParam(':firstname', $data->firstname, PDO::PARAM_STR); $objStatement->bindParam(':lastname', $data->lastname, PDO::PARAM_STR); $objStatement->bindParam(':username', $data->username, PDO::PARAM_STR); $objStatement->bindParam(':password', $data->password, PDO::PARAM_STR); $objStatement->bindParam(':email', $data->email, PDO::PARAM_STR); $objStatement->execute(); } Dibi: public function registerUser($data) { return dibi::query('INSERT INTO [users]', (array) $data); } |
||
Tori Profil |
#2 · Zasláno: 22. 3. 2011, 21:15:13
Bertram:
Můžete použít tohle: $objStatement = $this->getConn()->prepare($sql); $objStatement->execute(array(':firstname' => $data->firstname, ':lastname' => $data->lastname, ...)); |
||
Bertram Profil |
#3 · Zasláno: 22. 3. 2011, 21:36:46
Tori:
Děkuji za radu,rozhodně to zkracuje zápis,ale stále jsem nucen vyjmenovávat jednotlivé sloupce tabulky a jednotlivě jim přiřazovat hodnoty. Nevíte jestli je možné něco jako v Dibi a předat pouze pole,kde klíče budou korespondovat s názvy sloupců v tabulce? Snažím se pochopit,kde je ta pravá síla PDO a stále mi to nějak uniká. |
||
Lamicz Profil |
#4 · Zasláno: 23. 3. 2011, 21:59:45
Tam je druhá možnost používat otazníky místo názvů
|
||
Časová prodleva: 13 let
|
0