ZendFramework: Datenbankabfrage / SQL Abfrage mit ZendFramework & Magento

15. Juli 2011 at 14:38

Mit dem folgenden Code-Schnippsel könnt ihr einfach eine sql-abfrage über zend in magento starten.

More information: framework.zend.com/manual/de/zend.db.select.html

$table = array('table_name);
$selectCol = array('table_id' , 'col_two');
$where = 'col_two >= ?';  // ? wird ersetzt mit zweitem wert in der where bedingung
$order = '';
$connection = Mage::getSingleton('core/resource')->getConnection('core_read');
$select = $connection->select()
->from($table, $selectCol)
->where($where, $this->lastExportDate)
->order($order);
echo $select->__toString();  // die komplette sql-abfrage ausgeben lassen
$result = $connection->fetchAll($select);

 

 

Zendframework: The following code throws an exception with the wrong „Validate class not found from basename ‚EmailAddress'“ message

28. März 2011 at 18:48

Ihr erhaltet bei der Verwendung des ZendFrameworks unter PHP die Fehlermeldun „Validate class not found from basename ‚EmailAddress'“? Die Fehlermeldung ist etwas irreführend, eigentlich ist das reale Problem das MX checking unter Windows nicht verfügbar ist, jedenfalls bis 5.3 (ab PHP 5.3 sollte dies möglich sein).

Die dazu gehörige Klasse im ZendFramework:

Zend_Validate::is('email@provider.com', 'EmailAddress', array(Zend_Validate_Hostname::ALLOW_DNS, true));

Lösung: (L)unix basiertes System verwenden oder PHP 5.3 oder höher!

2 Tipps für die Arbeit mit Zend Framework und Ajax – Magento

24. März 2011 at 11:40

isXmlHttpRequest()

/**
* myAction from myController
*/
function myAction()
{
if  ($this->getRequest()->isXmlHttpRequest()) {
// do the handling of your ajax request
}
else {
// if it's not an ajax request then do regular handling here
}
}

JSON action helper

/**
* myAction from myController
*/
function myAction()
{
if ($this->getRequest()->isXmlHttpRequest()) {
// do the handling of your ajax request
$myArrayofData = array('a','b','c');
//encode your data into JSON and send the response
$this->_helper->json($myArrayofData);
//nothing else will get executed after the line above
}
else {
// if it's not an ajax request then do regular handling here
}
}
Weitere Tipps / nützliche Funktionen? Postet diese als Kommentar zum Artikel und ich nehme diese, wenn sinnvoll, mit in den Artikel auf.