PHP Sammelthread: Zend Framework und alles was dazugehört

Warum schreibst Du es denn nicht so, (beachte den Kommentar)?
PHP:
$route = new Zend_Controller_Router_Route('suche/:zipcode/page/:page',
    array(
        'module' => 'default',
        'controller' => 'index',
        'action' => 'suche',
        'zipcode' => 0,  /* ist das nicht sinnfrei zipcode mit 0 kann es doch nicht geben */
        'page' => 1
    )
);

Nur mal noch so ne Idee in den Raum werf:
Wieso schreibst Du nicht deinen eigenen Url Helper welcher dir bei Parameter 3 == TRUE die aktuellen module/controller/action setzt indem der die vom Request Object holt.

So könntest Du dein Problem elegant mit der Default Route lösen, und vermeidest unnötige Tipparbeit *wobei es der Tippelite zugute kommen würde ;)*
 
kA, wieso ich 00000 geschrieben habe, 0 hätte auch gereicht *g* Aber den default Wert vergebe ich, weil ja etwas angegeben werden muss und auf eine 0 kann ich ja entsprechend reagieren ;)

Naja mal was anderes: Kann es sein, dass Zend_Db_Select bei jeder Query vorher die vorhandenen Spalten abfragt? 8O Ich hab grade so das Gefühl, das wäre für mich nämlich ein K.O. Kriterium dafür.
 
Mir gefällt das eigentlich auch nicht so, aber dadurch ist man ja unabhängig von der eingesetzten Datenbank, was ja der Sinn von dem ganzen ist.

Wie oft tauscht man real die Datenbank?

Und wenn du deine Anwendung nun für MySQL schreibst, dann wirst du auch spezielle Funktionen von MySQL nutzen, die du auch mit Zend_Db_Table abbilden kannst, trotzdem wird es nicht portabel sein!
Wenn du deinen Query selbst schreibst ist er genauso portabel wie der von Zend_Db_Table in 90% der Fälle ohne Probleme, wenn man spezielle Funktionen des RDBMS nutzt, muss man in beiden Fällen bei einem Wechsel Hand anlegen.

Und einfach so ne DB (inkl. Anwendung) zu portieren ohne Anpassungen vorzunehmen ist sträflich, in einigen Punkten unterscheiden sich die Datenbanken dann wieder (und sei es nur der Datenbankserver und nicht das SQL), dann hast du aus einer performanten Datenbank von vorher eine Performancebremse gemacht, weil das RDBMS bestimmte Dinge anders behandelt.

Bestes Beispiel:
PHP:
SELECT COUNT(*) FROM user;
Unter MyISAM unheimlich schnell (Echtzeit, keine Berechnungen notwendig) ist dieser unter InnoDB wieder aaaabsolut lahm (einigen großen startups ist dies passiert ;)).
Und dabei haben wir noch nicht einmal den Server gewechselt, wir haben gerade nur die Engine getauscht.
 
Ok alles klar, danke ;)

Nächste Frage :biggrin:

Ich erstelle mit Zend_Form_Element_Button einen Submit Button. Diesen Formatiere ich mit CSS und der(?!) Value ist "Suchen". Um das allerdings punktgenau positionieren zu können, brauch ich noch nen <p> um den(?!) Value. Wie kann ich das mit Zend_Form_Element da reinsetzen?
 
Code:
Fatal error: Call to a member function setOption() on a non-object
Scheinbar gibt getDecorator('Label') kein Objekt zurück. Ne Idee, woran das liegt?
 
Momentmal, wie dämlich bin eigentlich :ugly:

wie willst du um den Value nen p-Tag haben?
Code:
<input type="submit" name="<p>Suchen!?</p>" value="[B]<p>[/B]Suchen!?[B]</p>[/B]" />
 
Also für ein so komisches Html-Markup musst du einen eigenen Zend_Form_Decorator_ViewHelper schreiben, ich würde mir da aber eher überlegen ob du es nicht auch anders über CSS stylen kannst, immerhin bekommt jedes Element auch eine Id.
 
Also für ein so komisches Html-Markup musst du einen eigenen Zend_Form_Decorator_ViewHelper schreiben, ich würde mir da aber eher überlegen ob du es nicht auch anders über CSS stylen kannst, immerhin bekommt jedes Element auch eine Id.
Jo, ich weiß. Nur der Button hat ein Background und dann ist darin Text und dieser muss noch ein bisschen positioniert werden. Padding will in dem Button nämlich nicht so ganz (also gar nicht) :-?
 
In wie weit geht denn Dein Button nicht zu stylen? Schonmal mit line-height; height; font oder text-align probiert? Sollte doch in meinen Augen alles abdecken, oder? Folgendes oder dies sollte Dir auch noch einige Hilfestellung dazu geben ;)
 
Ich habe aber kein <input> sondern <button> und da lässt sich der Text wohl nicht so einfach verschieben :-?
Padding wird nämlich total ignoriert. Erst wenn ich da nen HTML Tag reinsetze und darin den Text habe, lässt sich da etwas verschieben.