2009-12-17 16 views
16

Sto usando zend framework. Sto usando la seguente query in zend e funziona perfettamente per me.Zend: Come utilizzare la query SQL con la parola chiave "like"?

$table = $this->getDbTable(); 
$select = $table->select(); 
$select->where('name = ?', 'UserName'); 
$rows = $table->fetchAll($select); 

Ora voglio creare un'altra query in zend con la parola chiave "like". In SQL semplice è così.

SELECT * FROM Users WHERE name LIKE 'U%' 

Ora come convertire il mio codice zend per la query precedente?

risposta

41

Prova:

$table = $this->getDbTable(); 
$select = $table->select(); 
$select->where('name LIKE ?', 'UserName%'); 
$rows = $table->fetchAll($select); 

o se il nome utente è una variabile:

$table = $this->getDbTable(); 
$select = $table->select(); 
$select->where('name LIKE ?', $userName.'%'); 
$rows = $table->fetchAll($select); 
0
$user = new Application_Model_DbTable_User(); 
// User List 
$uname=$_POST['uname']; 

$query = $user 
    ->select() 
    ->where('firstname LIKE ?', $uname.'%') 
    ->ORwhere('lastname LIKE ?', $_POST['lname'].'%') 
    ->ORwhere('emailid LIKE ?', $_POST['email'].'%'); 

$userlist = $user->fetchAll($query); 
Problemi correlati