2
0

Zend_Application-AvailableResources-Session.xml 4.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15997 -->
  3. <!-- Reviewed: no -->
  4. <sect2 id="zend.application.available-resources.session">
  5. <title>Zend_Application_Resource_Session</title>
  6. <para>
  7. <classname>Zend_Application_Resource_Session</classname> erlaubt es
  8. <classname>Zend_Session</classname> zu konfigurieren, sowie optional einen Session
  9. SaveHandler zu initialisieren.
  10. </para>
  11. <para>
  12. Um einen Session Save Handler zu setzen, muß einfach der Optionsschlüssel
  13. <emphasis>saveHandler</emphasis> (Groß-/Kleinschreibung beachten) an die Ressource
  14. übergeben werden. Der Wert dieser Option kann einer der folgenden sein:
  15. </para>
  16. <itemizedlist>
  17. <listitem><para>
  18. <type>String</type>: Ein String der eine Klasse benennt die
  19. <classname>Zend_Session_SaveHandler_Interface</classname> implementiert und initiiert
  20. werden soll.
  21. </para></listitem>
  22. <listitem><para>
  23. <type>Array</type>: Ein Array mit den Schlüsseln "class", und optional
  24. "options", das eine Klasse benennt die
  25. <classname>Zend_Session_SaveHandler_Interface</classname> implementiert und iniiert
  26. werden, und ein Array von Optionen die an dessen Contructor übergeben werden soll.
  27. </para></listitem>
  28. <listitem><para>
  29. <classname>Zend_Session_SaveHandler_Interface</classname>: Ein Objekt das dieses
  30. Interface implementiert.
  31. </para></listitem>
  32. </itemizedlist>
  33. <para>
  34. Jeder andere übergebene Optionsschlüssel wird an
  35. <methodname>Zend_Session::setOptions()</methodname> übergeben um
  36. <classname>Zend_Session</classname> zu konfigurieren.
  37. </para>
  38. <example id="zend.application.available-resources.session.configExample">
  39. <title>Beispiel der Konfiguration einer Session Ressource</title>
  40. <para>
  41. Anbei ist das Beispiel eines <acronym>INI</acronym> Abschnitts der zeigt wie die
  42. Session Ressource konfiguriert werden kann. Er setzt verschiedene
  43. <classname>Zend_Session</classname> Optionen, und konfiguriert eine
  44. <classname>Zend_Session_SaveHandler_DbTable</classname> Instanz.
  45. </para>
  46. <programlisting language="ini"><![CDATA[
  47. resources.session.save_path = APPLICATION_PATH "/../data/session"
  48. resources.session.use_only_cookies = true
  49. resources.session.remember_me_seconds = 864000
  50. resources.session.saveHandler.class = "Zend_Session_SaveHandler_DbTable"
  51. resources.session.saveHandler.options.name = "session"
  52. resources.session.saveHandler.options.primary.session_id = "session_id"
  53. resources.session.saveHandler.options.primary.save_path = "save_path"
  54. resources.session.saveHandler.options.primary.name = "name"
  55. resources.session.saveHandler.options.primaryAssignment.sessionId = "sessionId"
  56. resources.session.saveHandler.options.primaryAssignment.sessionSavePath = "sessionSavePath"
  57. resources.session.saveHandler.options.primaryAssignment.sessionName = "sessionName"
  58. resources.session.saveHandler.options.modifiedColumn = "modified"
  59. resources.session.saveHandler.options.dataColumn = "session_data"
  60. resources.session.saveHandler.options.lifetimeColumn = "lifetime"
  61. ]]></programlisting>
  62. </example>
  63. <note>
  64. <title>Die Datenbank zuerst bootstrappen!</title>
  65. <para>
  66. Wenn man den <classname>Zend_Session_SaveHandler_DbTable</classname> Session Save
  67. Handler konfiguriert, muß man für diesen zuerst die Datenbank Verbindung konfigurieren
  68. damit er arbeitet. Das kann entweder durch Verwendung der <link
  69. linkend="zend.application.available-resources.db">Db</link> Ressource getan werden
  70. -- und indem man sicherstellt das der "<emphasis>resources.db</emphasis>" Schlüssel vor
  71. dem "<emphasis>resources.session</emphasis>" Schlüssel kommt -- oder durch Schreiben
  72. einer eigenen Ressource die die Datenbank initialisiert, und im speziellen den
  73. Standardmäßigen <classname>Zend_Db_Table</classname> Adapter setzt.
  74. </para>
  75. </note>
  76. </sect2>