<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="de">
	<id>https://wiki.orgamon.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.168.115.13</id>
	<title>OrgaMon Wiki - Benutzerbeiträge [de]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.orgamon.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.168.115.13"/>
	<link rel="alternate" type="text/html" href="https://wiki.orgamon.org/index.php?title=Spezial:Beitr%C3%A4ge/192.168.115.13"/>
	<updated>2026-04-30T08:48:14Z</updated>
	<subtitle>Benutzerbeiträge</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>https://wiki.orgamon.org/index.php?title=ECommerce&amp;diff=6557</id>
		<title>ECommerce</title>
		<link rel="alternate" type="text/html" href="https://wiki.orgamon.org/index.php?title=ECommerce&amp;diff=6557"/>
		<updated>2005-04-12T12:54:50Z</updated>

		<summary type="html">&lt;p&gt;192.168.115.13: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;eCommerce - Funktionen &amp;quot;Überblick&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 Erstmalig werden Funktionen für Geschäftsabläufe aus OrgaMon in einem&lt;br /&gt;
 Zentralen Modul (eCommerce) gesammelt. Das Ziel ist, den ganzen Webshop&lt;br /&gt;
 bzw. alle Webanfragen ausschließlich über das eCommerce Modul laufen zu&lt;br /&gt;
 lassen. Dabei werden auch erstmals &amp;quot;r&amp;quot; Connections und &amp;quot;w&amp;quot; Connections&lt;br /&gt;
 eingesetzt, was dem zukünftigen raib-Server zugute kommt (Clustering).&lt;br /&gt;
 Nun eine Liste aller eCommerce Funktionen:&lt;br /&gt;
&lt;br /&gt;
eCommerce - Funktionen &amp;quot;XML-RPC-Verfügbar&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelSuche(SuchStr: string): array of integer; { ARTIKEL_R }&lt;br /&gt;
    // Suchmaschine für Artikelsuche&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelPreis(AUSGABEART_R, ARTIKEL_R:integer): double;&lt;br /&gt;
    // liefert den Preis des Artikels in dieser Ausgabeart&lt;br /&gt;
    // kostenlos = 0; // &lt;br /&gt;
    // cPreis_vergriffen = -1.0; // Artikel nicht mehr lieferbar.&lt;br /&gt;
    // cPreis_aufAnfrage = -2.0; // keine Preisinformation verfügbar.&lt;br /&gt;
&lt;br /&gt;
    abu.Land(LAND_R: integer): string;&lt;br /&gt;
    // liefert die Landesbezeichnung (als ISO-Kürzel)&lt;br /&gt;
&lt;br /&gt;
    abu.KontoInfo(PERSON_R: integer): double;&lt;br /&gt;
    // liefert den Kontostand des Kunden (zu zahlen!)&lt;br /&gt;
    // erzeugt als Nebeneffekt die aktuelle &amp;quot;Mahnung.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.BestellInfo(PERSON_R: integer): integer;&lt;br /&gt;
    // liefert den Lieferrückstand des Lieferanten (Erwartete Mengen!)&lt;br /&gt;
    // erzeugt als Nebeneffekt die aktuelle &amp;quot;Bestellung.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.Bestellen(PERSON_R: integer): integer;&lt;br /&gt;
    // erstellt aus dem Einkaufswagen des Kunden eine tatsächliche&lt;br /&gt;
    // Bestellung. Die (neue) Beleg-Nummer wird zurückgegeben.&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelVersendetag(AUSGABEART_R, ARTIKEL_R:integer): integer;&lt;br /&gt;
    //&lt;br /&gt;
    // GELBE STATI&lt;br /&gt;
    //  0=keine Info über Verfügbarkeit vorhanden&lt;br /&gt;
    //&lt;br /&gt;
    // ROTE STATI:&lt;br /&gt;
    //  1=entgültig vergriffen&lt;br /&gt;
    //  2=zur Zeit vergriffen, Neuauflage jedoch ungewiss&lt;br /&gt;
    //  3=zur Zeit vergriffen, Neuauflage jedoch sicher&lt;br /&gt;
    //&lt;br /&gt;
    //&lt;br /&gt;
    // GRÜNE STATI:&lt;br /&gt;
    //  10=heute lieferbar  (=ist am Lager, ohne Mengenangabe)&lt;br /&gt;
    //  11=morgen lieferbar (=wurde z.B. mit dieser Zusage bereits bestellt und kommt morgen)&lt;br /&gt;
    //  12=in 2 Tagen lieferbar... (=ist z.B. in dieser Zeit zu beschaffen)&lt;br /&gt;
    //  13=in 3 Tagen lieferbar...&lt;br /&gt;
    //  14= ... usw ...&lt;br /&gt;
    //&lt;br /&gt;
    // GRÜNE STATI:&lt;br /&gt;
    //  101= heute lieferbar  (=ist am Lager, Lagermenge=1)&lt;br /&gt;
    //  102= heute lieferbar  (=ist am Lager, Lagermenge=2)&lt;br /&gt;
    //  103= heute lieferbar  (=ist am Lager, Lagermenge=3)&lt;br /&gt;
    //  ... usw.&lt;br /&gt;
    //&lt;br /&gt;
    //  GRÜNE STATI:&lt;br /&gt;
    // &amp;gt;20020101= Konkretes Lieferdatum (z.B. Erscheinungsdatum!)&lt;br /&gt;
    //  20031003= am 03.10.2003 lieferbar (da es z.B. an diesem Tag erscheint)&lt;br /&gt;
    //            (Vorbestellungen natürlich möglich)&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.Verlag(VERLAG_R:integer): string;&lt;br /&gt;
    // Names des Verlages zu einem Verlags-RID&lt;br /&gt;
    // ACHTUNG: aus geschichtlichen Gründen sind VERLAG_R zumeist als PERSON_R(s)&lt;br /&gt;
    // zu verstehen!&lt;br /&gt;
&lt;br /&gt;
    abu.Versandkosten(PERSON_R:integer): double;&lt;br /&gt;
    // Liefert passend zum &amp;quot;Kunden,Umfang des Einkaufswagen,Versandart des Kunden&amp;quot; die&lt;br /&gt;
    // passenden Versandkosten. Im Moment als dummy immer 3,33 €.&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelInfo(AUSGABEART_R, ARTIKEL_R, LAND_R, VERLAG_R) : double, string;&lt;br /&gt;
    // Multi-Info-Funktion für weitere Informationen zu Artikel-Daten&lt;br /&gt;
    // Ergebnisse: Preis, &amp;quot;ISO-Landeskennzeichen&amp;quot; &amp;quot;-&amp;quot; &amp;quot;Verlag&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.BasePlug():array of string;&lt;br /&gt;
    // liefert diverse Informations-String:&lt;br /&gt;
    // 1) Datenbankname&lt;br /&gt;
    // 2) OrgaMon Versions-Nummer&lt;br /&gt;
    // 3) IBO Versions-Nummer&lt;br /&gt;
    // 4) Indy Versions-Nummer&lt;br /&gt;
    // 5) PDF Pfad (public)&lt;br /&gt;
    // 6) Musik Pfad&lt;br /&gt;
    // 7) HTML-Pfad (Rechnungen)&lt;br /&gt;
    // 8) Bild-URL&lt;br /&gt;
    // * Mit Hilfe des Verbindungsstrings sollte auf die entsprechende Datenbank&lt;br /&gt;
    //   konnektiert werden.&lt;br /&gt;
    // * In der Datenbank sollten nun alle weiteren Parameter, den Shop betreffend&lt;br /&gt;
    //   eingegeben sein!&lt;br /&gt;
    // für den Shop wichtige Parameter:&lt;br /&gt;
    //&lt;br /&gt;
    // MusicPath=\\Linus\user\abu\Delphi\abu\Musik\&lt;br /&gt;
    // PDFPath=\\Linus\user\hebu\HeBu PDF\A4PDF\&lt;br /&gt;
    // XMLRPCHost=BRUTUS&lt;br /&gt;
    // XMLRPCPort=3049&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelRabattPreis(AUSGABEART_R,ARTIKEL_R,PERSON_R) : array of double;&lt;br /&gt;
    //&lt;br /&gt;
    // wie Artikel-Preis, soll jedoch bei Kunden mit Rabatt-Code verwendet werden,&lt;br /&gt;
    // diese Funktion liefert noch die Rabatt-Zahl dazu!&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.PersonNeu : integer; { PERSON_R }&lt;br /&gt;
    //&lt;br /&gt;
    // Eine neue Person wird angelegt. Der (neue) RID wird als Ergebnis ge-&lt;br /&gt;
    // liefert. Der Webshop kann nun weitere Eintragungen machen.&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.Ort(PERSON_R) : string; { Adress-Ortsangabe }&lt;br /&gt;
    //&lt;br /&gt;
    // Zu der angegebenen Person wird die Orts-Angabe zusammengestellt.&lt;br /&gt;
    // Dazu wird Land, Plz, Ortsname und Ortsteil landesspeziefisch&lt;br /&gt;
    // kombiniert.&lt;br /&gt;
&lt;br /&gt;
    abu.Rabatt(PERSON_R) : boolean;&lt;br /&gt;
    // Zu der angegebenen Person wird ermittelt, ob sie Rabatte bekommt.&lt;br /&gt;
    // Wenn ja wird true, andernfalls false zurückgegeben.&lt;br /&gt;
&lt;br /&gt;
    abu.Preis(AUSGABEART_R,ARTIKEL_R,PERSON_R) : array of double;&lt;br /&gt;
    //&lt;br /&gt;
    // Ersetzt in Zukunft die beiden Methoden abu.ArtikelPreis und abu.ArtikelRabattPreis&lt;br /&gt;
    // Falls der Kunde Rabatte bekommt, was beim Login mit abu.Rabatt geprüft wird,&lt;br /&gt;
    // wird der Funktion der wirkliche PERSON_R übergeben, andernfalls 0.&lt;br /&gt;
    // Rückgabewerte sind der Preis und der Rabatt (in Prozent, 0 bei PERSON_R == 0).&lt;br /&gt;
&lt;br /&gt;
eCommerce - Funktionen &amp;quot;intern verfügbar&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    procedure e_w_BedarfsAnzeige(AUSGABEART_R, ARTIKEL_R, POSTEN_R, MENGE: integer; Motivation: eMotivation);&lt;br /&gt;
    // dem Agenten signalisieren, dass Bestell-Bedarf besteht&lt;br /&gt;
&lt;br /&gt;
    procedure e_w_Wareneingang(AUSGABEART_R, ARTIKEL_R, MENGE: integer);&lt;br /&gt;
    // Waren im System verteilen&lt;br /&gt;
&lt;br /&gt;
    function e_r_Lieferant(ARTIKEL_R, MENGE: integer): integer; {PERSON_R}&lt;br /&gt;
    // Ermittelt den Lieferanten zu diesem Artikel&lt;br /&gt;
&lt;br /&gt;
    function e_w_BestellBeleg(PERSON_R: integer): integer; {BBELEG_R}&lt;br /&gt;
    // liefert die Nummer eines Bestellbelegs, ev. wird einer neu erzeugt&lt;br /&gt;
&lt;br /&gt;
    function e_r_Menge(AUSGABEART_R, ARTIKEL_R: integer): integer; { MENGE }&lt;br /&gt;
    // liefert die Lagermenge dieses Artikels in der angegebenen&lt;br /&gt;
    // Ausprägungsart&lt;br /&gt;
&lt;br /&gt;
    function e_w_Menge(AUSGABEART_R, ARTIKEL_R, MENGE: integer): integer; { MENGE }&lt;br /&gt;
    // bucht eine Lagermenge ab oder zu, oder als read-Only&lt;br /&gt;
    // liefert die neue Lagermenge&lt;/div&gt;</summary>
		<author><name>192.168.115.13</name></author>
	</entry>
	<entry>
		<id>https://wiki.orgamon.org/index.php?title=ECommerce&amp;diff=6502</id>
		<title>ECommerce</title>
		<link rel="alternate" type="text/html" href="https://wiki.orgamon.org/index.php?title=ECommerce&amp;diff=6502"/>
		<updated>2005-04-12T12:53:48Z</updated>

		<summary type="html">&lt;p&gt;192.168.115.13: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;eCommerce - Funktionen &amp;quot;Überblick&amp;quot;&lt;br /&gt;
&lt;br /&gt;
 Erstmalig werden Funktionen für Geschäftsabläufe aus OrgaMon in einem&lt;br /&gt;
 Zentralen Modul (eCommerce) gesammelt. Das Ziel ist, den ganzen Webshop&lt;br /&gt;
 bzw. alle Webanfragen ausschließlich über das eCommerce Modul laufen zu&lt;br /&gt;
 lassen. Dabei werden auch erstmals &amp;quot;r&amp;quot; Connections und &amp;quot;w&amp;quot; Connections&lt;br /&gt;
 eingesetzt, was dem zukünftigen raib-Server zugute kommt (Clustering).&lt;br /&gt;
 Nun eine Liste aller eCommerce Funktionen:&lt;br /&gt;
&lt;br /&gt;
eCommerce - Funktionen &amp;quot;XML-RPC-Verfügbar&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelSuche(SuchStr: string): array of integer; { ARTIKEL_R }&lt;br /&gt;
    // Suchmaschine für Artikelsuche&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelPreis(AUSGABEART_R, ARTIKEL_R:integer): double;&lt;br /&gt;
    // liefert den Preis des Artikels in dieser Ausgabeart&lt;br /&gt;
    // kostenlos = 0; // &lt;br /&gt;
    // cPreis_vergriffen = -1.0; // Artikel nicht mehr lieferbar.&lt;br /&gt;
    // cPreis_aufAnfrage = -2.0; // keine Preisinformation verfügbar.&lt;br /&gt;
&lt;br /&gt;
    abu.Land(LAND_R: integer): string;&lt;br /&gt;
    // liefert die Landesbezeichnung (als ISO-Kürzel)&lt;br /&gt;
&lt;br /&gt;
    abu.KontoInfo(PERSON_R: integer): double;&lt;br /&gt;
    // liefert den Kontostand des Kunden (zu zahlen!)&lt;br /&gt;
    // erzeugt als Nebeneffekt die aktuelle &amp;quot;Mahnung.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.BestellInfo(PERSON_R: integer): integer;&lt;br /&gt;
    // liefert den Lieferrückstand des Lieferanten (Erwartete Mengen!)&lt;br /&gt;
    // erzeugt als Nebeneffekt die aktuelle &amp;quot;Bestellung.html&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.Bestellen(PERSON_R: integer): integer;&lt;br /&gt;
    // erstellt aus dem Einkaufswagen des Kunden eine tatsächliche&lt;br /&gt;
    // Bestellung. Die (neue) Beleg-Nummer wird zurückgegeben.&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelVersendetag(AUSGABEART_R, ARTIKEL_R:integer): integer;&lt;br /&gt;
    //&lt;br /&gt;
    // GELBE STATI&lt;br /&gt;
    //  0=keine Info über Verfügbarkeit vorhanden&lt;br /&gt;
    //&lt;br /&gt;
    // ROTE STATI:&lt;br /&gt;
    //  1=entgültig vergriffen&lt;br /&gt;
    //  2=zur Zeit vergriffen, Neuauflage jedoch ungewiss&lt;br /&gt;
    //  3=zur Zeit vergriffen, Neuauflage jedoch sicher&lt;br /&gt;
    //&lt;br /&gt;
    //&lt;br /&gt;
    // GRÜNE STATI:&lt;br /&gt;
    //  10=heute lieferbar  (=ist am Lager, ohne Mengenangabe)&lt;br /&gt;
    //  11=morgen lieferbar (=wurde z.B. mit dieser Zusage bereits bestellt und kommt morgen)&lt;br /&gt;
    //  12=in 2 Tagen lieferbar... (=ist z.B. in dieser Zeit zu beschaffen)&lt;br /&gt;
    //  13=in 3 Tagen lieferbar...&lt;br /&gt;
    //  14= ... usw ...&lt;br /&gt;
    //&lt;br /&gt;
    // GRÜNE STATI:&lt;br /&gt;
    //  101= heute lieferbar  (=ist am Lager, Lagermenge=1)&lt;br /&gt;
    //  102= heute lieferbar  (=ist am Lager, Lagermenge=2)&lt;br /&gt;
    //  103= heute lieferbar  (=ist am Lager, Lagermenge=3)&lt;br /&gt;
    //  ... usw.&lt;br /&gt;
    //&lt;br /&gt;
    //  GRÜNE STATI:&lt;br /&gt;
    // &amp;gt;20020101= Konkretes Lieferdatum (z.B. Erscheinungsdatum!)&lt;br /&gt;
    //  20031003= am 03.10.2003 lieferbar (da es z.B. an diesem Tag erscheint)&lt;br /&gt;
    //            (Vorbestellungen natürlich möglich)&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.Verlag(VERLAG_R:integer): string;&lt;br /&gt;
    // Names des Verlages zu einem Verlags-RID&lt;br /&gt;
    // ACHTUNG: aus geschichtlichen Gründen sind VERLAG_R zumeist als PERSON_R(s)&lt;br /&gt;
    // zu verstehen!&lt;br /&gt;
&lt;br /&gt;
    abu.Versandkosten(PERSON_R:integer): double;&lt;br /&gt;
    // Liefert passend zum &amp;quot;Kunden,Umfang des Einkaufswagen,Versandart des Kunden&amp;quot; die&lt;br /&gt;
    // passenden Versandkosten. Im Moment als dummy immer 3,33 €.&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelInfo(AUSGABEART_R, ARTIKEL_R, LAND_R, VERLAG_R) : double, string;&lt;br /&gt;
    // Multi-Info-Funktion für weitere Informationen zu Artikel-Daten&lt;br /&gt;
    // Ergebnisse: Preis, &amp;quot;ISO-Landeskennzeichen&amp;quot; &amp;quot;-&amp;quot; &amp;quot;Verlag&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    abu.BasePlug():array of string;&lt;br /&gt;
    // liefert diverse Informations-String:&lt;br /&gt;
    // 1) Datenbankname&lt;br /&gt;
    // 2) OrgaMon Versions-Nummer&lt;br /&gt;
    // 3) IBO Versions-Nummer&lt;br /&gt;
    // 4) Indy Versions-Nummer&lt;br /&gt;
    // 5) PDF Pfad (public)&lt;br /&gt;
    // 6) Musik Pfad&lt;br /&gt;
    // 7) HTML-Pfad (Rechnungen)&lt;br /&gt;
    // 8) Bild-URL&lt;br /&gt;
    // * Mit Hilfe des Verbindungsstrings sollte auf die entsprechende Datenbank&lt;br /&gt;
    //   konnektiert werden.&lt;br /&gt;
    // * In der Datenbank sollten nun alle weiteren Parameter, den Shop betreffend&lt;br /&gt;
    //   eingegeben sein!&lt;br /&gt;
    // für den Shop wichtige Parameter:&lt;br /&gt;
    //&lt;br /&gt;
    // MusicPath=\\Linus\user\abu\Delphi\abu\Musik\&lt;br /&gt;
    // PDFPath=\\Linus\user\hebu\HeBu PDF\A4PDF\&lt;br /&gt;
    // XMLRPCHost=BRUTUS&lt;br /&gt;
    // XMLRPCPort=3049&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.ArtikelRabattPreis(AUSGABEART_R,ARTIKEL_R,PERSON_R) : array of double;&lt;br /&gt;
    //&lt;br /&gt;
    // wie Artikel-Preis, soll jedoch bei Kunden mit Rabatt-Code verwendet werden,&lt;br /&gt;
    // diese Funktion liefert noch die Rabatt-Zahl dazu!&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.PersonNeu : integer; { PERSON_R }&lt;br /&gt;
    //&lt;br /&gt;
    // Eine neue Person wird angelegt. Der (neue) RID wird als Ergebnis ge-&lt;br /&gt;
    // liefert. Der Webshop kann nun weitere Eintragungen machen.&lt;br /&gt;
    //&lt;br /&gt;
&lt;br /&gt;
    abu.Ort(PERSON_R) : string; { Adress-Ortsangabe }&lt;br /&gt;
    //&lt;br /&gt;
    // Zu der angegebenen Person wird die Orts-Angabe zusammengestellt.&lt;br /&gt;
    // Dazu wird Land, Plz, Ortsname und Ortsteil landesspeziefisch&lt;br /&gt;
    // kombiniert.&lt;br /&gt;
&lt;br /&gt;
    abu.Rabatt(PERSON_R) : boolean;&lt;br /&gt;
    // Zu der angegebenen Person wird ermittelt, ob sie Rabatte bekommt.&lt;br /&gt;
    // Wenn ja, wird true, andernfalls false zurückgegeben.&lt;br /&gt;
&lt;br /&gt;
    abu.Preis(AUSGABEART_R,ARTIKEL_R,PERSON_R) : array of double;&lt;br /&gt;
    //&lt;br /&gt;
    // Ersetzt in Zukunft die beiden Methoden abu.ArtikelPreis und abu.ArtikelRabattPreis&lt;br /&gt;
    // Falls der Kunde Rabatte bekommt, was beim Login mit abu.Rabatt geprüft wird,&lt;br /&gt;
    // wird der Funktion der wirkliche PERSON_R übergeben, andernfalls 0.&lt;br /&gt;
    // Rückgabewerte sind der Preis und der Rabatt (in Prozent, 0 bei PERSON_R == 0).&lt;br /&gt;
&lt;br /&gt;
eCommerce - Funktionen &amp;quot;intern verfügbar&amp;quot;&lt;br /&gt;
&lt;br /&gt;
    procedure e_w_BedarfsAnzeige(AUSGABEART_R, ARTIKEL_R, POSTEN_R, MENGE: integer; Motivation: eMotivation);&lt;br /&gt;
    // dem Agenten signalisieren, dass Bestell-Bedarf besteht&lt;br /&gt;
&lt;br /&gt;
    procedure e_w_Wareneingang(AUSGABEART_R, ARTIKEL_R, MENGE: integer);&lt;br /&gt;
    // Waren im System verteilen&lt;br /&gt;
&lt;br /&gt;
    function e_r_Lieferant(ARTIKEL_R, MENGE: integer): integer; {PERSON_R}&lt;br /&gt;
    // Ermittelt den Lieferanten zu diesem Artikel&lt;br /&gt;
&lt;br /&gt;
    function e_w_BestellBeleg(PERSON_R: integer): integer; {BBELEG_R}&lt;br /&gt;
    // liefert die Nummer eines Bestellbelegs, ev. wird einer neu erzeugt&lt;br /&gt;
&lt;br /&gt;
    function e_r_Menge(AUSGABEART_R, ARTIKEL_R: integer): integer; { MENGE }&lt;br /&gt;
    // liefert die Lagermenge dieses Artikels in der angegebenen&lt;br /&gt;
    // Ausprägungsart&lt;br /&gt;
&lt;br /&gt;
    function e_w_Menge(AUSGABEART_R, ARTIKEL_R, MENGE: integer): integer; { MENGE }&lt;br /&gt;
    // bucht eine Lagermenge ab oder zu, oder als read-Only&lt;br /&gt;
    // liefert die neue Lagermenge&lt;/div&gt;</summary>
		<author><name>192.168.115.13</name></author>
	</entry>
	<entry>
		<id>https://wiki.orgamon.org/index.php?title=WebShop&amp;diff=4788</id>
		<title>WebShop</title>
		<link rel="alternate" type="text/html" href="https://wiki.orgamon.org/index.php?title=WebShop&amp;diff=4788"/>
		<updated>2005-02-28T20:07:36Z</updated>

		<summary type="html">&lt;p&gt;192.168.115.13: /* Interbase-Extension für PHP laden */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Den Apache-Webserver installieren ==&lt;br /&gt;
&lt;br /&gt;
   Falls erforderlich, aktuellste Version des Apache von http://www.apache.org downloaden.&lt;br /&gt;
   Zur Zeit (September 2002) gibts aber noch Probleme PHP 4.2.x auf dem neuen Apache 2.0.40 laufen zu lassen. &lt;br /&gt;
   Deshalb ist im Moment noch die Version 1.3.2x vorzuziehen.&lt;br /&gt;
   Im Index auf den Ordner &amp;quot;Binaries&amp;quot; klicken und danach auf den Ordner &amp;quot;Windows&amp;quot; bzw. &lt;br /&gt;
   &amp;quot;Linux&amp;quot;.&lt;br /&gt;
   Die gewünschte Datei herunterladen und entpacken.&lt;br /&gt;
   Das Setup Programm ausführen. An entsprechender Stelle &amp;quot;Service für alle User bereit &lt;br /&gt;
   stellen&amp;quot; auswählen.&lt;br /&gt;
&lt;br /&gt;
   Zum Test, ob der Server läuft, im Internet Browser einfach &amp;quot;localhost&amp;quot; oder die &lt;br /&gt;
   IP-Adresse &amp;quot;127.0.0.1&amp;quot; eingeben. Dann müsste folgender Text erscheinen: &lt;br /&gt;
   &amp;quot;Es klappt! Der Apache-Webserver ist auf dieser Website installiert!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Den Apache-Webserver konfigurieren ==&lt;br /&gt;
&lt;br /&gt;
   Nach der Installation der Apache Software ist Startmenü um ein Verzeichnis reicher.&lt;br /&gt;
   Dort kann man unter anderem die Apache-Konfigurations Datei &amp;quot;httpd.conf&amp;quot; editieren.&lt;br /&gt;
   Den Eintrag &amp;quot;DocumentRoot=&amp;quot; sollte man auf das Verzeichnis setzen in dem die &amp;quot;index.html&amp;quot; &lt;br /&gt;
   oder eine andere Index-Datei der Homepage liegt, die geservt werden soll.&lt;br /&gt;
   Den Eintrag &amp;lt;Directory= &amp;gt; sollte man auf das gleiche Verzeichnis setzen.&lt;br /&gt;
&lt;br /&gt;
   Das sollte fürs erste reichen. Jedoch lassen sich in dieser Datei noch wesentlich mehr Funktionen &lt;br /&gt;
   einstellen, was zu erklären über den Umfang dieses HowTos hinausgehen würde.&lt;br /&gt;
   Die einzelnen Einträge sind in englisch kommentiert und erklären sich somit (fast) von selbst.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PHP installieren ==&lt;br /&gt;
&lt;br /&gt;
   PHP ist von der Seite &amp;quot;www.php.net&amp;quot; zu beziehen. &lt;br /&gt;
   Am besten die neuste Version als .zip Datei herunterladen (auch falls eine .exe Datei vorliegen sollte).&lt;br /&gt;
   Nach dem Download die Datei entpacken, z.B. in &amp;quot;C:\Programme\Php&amp;quot;. Im Folgenden nehmen &lt;br /&gt;
   wir an, wir hätten dieses Verzeichnis gewählt.&lt;br /&gt;
&lt;br /&gt;
   Die Datei &amp;quot;php4ts.dll&amp;quot; (PHP4) bzw. &amp;quot;php5ts.dll&amp;quot; (PHP5) in &amp;quot;C:\Programme\Php&amp;quot; und die DLLs in &amp;quot;C:\Programme\Php\dlls&amp;quot; werden &lt;br /&gt;
   in das &amp;quot;Windows/System&amp;quot;-Verzeichnis (Win95/98) bzw. das &amp;quot;WINNT/System32&amp;quot;-Verzeichnis (WinNT/2000/XP) kopiert.&lt;br /&gt;
&lt;br /&gt;
   Besser ist es allerdings &amp;quot;C:\Programme\Php&amp;quot; zu Umgebungsvariablen PATH hinzuzufügen, da es zukünftige Updates erleichtert.&lt;br /&gt;
   Es muss dann nämlich nichts mehr kopiert werden.&lt;br /&gt;
&lt;br /&gt;
   Die Datei &amp;quot;C:\Programme\Php\php.ini-dist&amp;quot; oder besser &amp;quot;C:\Programme\Php\php.ini-recommended&amp;quot; &lt;br /&gt;
   wird ins &amp;quot;Windows&amp;quot;-Verzeichnis bzw. ins &amp;quot;WINNT&amp;quot;-Verzeichnis kopiert und in &amp;quot;php.ini&amp;quot; umbenannt.&lt;br /&gt;
   (Wird ein Apache 2.0.x Server benutzt, muss die Datei nicht kopiert werden, sondern der Pfad zur ini-Datei kann dem Apache&lt;br /&gt;
    in dessen conf-Datei angegeben werden, siehe nächstes Kapitel unter PHP5).&lt;br /&gt;
&lt;br /&gt;
   Dann muss sie im Editor geöffnet und der Eintrag &amp;quot;register_globals = Off&amp;quot; muss auf &amp;quot;On&amp;quot; gesetzt werden. &lt;br /&gt;
   Das ist wichtig, da ansonsten keine Variablen von einem Skript zum anderen übergeben werden können.&lt;br /&gt;
   Ausserdem muss &amp;quot;register_argc_argv = On&amp;quot; gesetzt werden. Dies ist in der &amp;quot;php.ini-recommended&amp;quot; auf &amp;quot;Off&amp;quot; gesetzt,&lt;br /&gt;
   um die Performance zu verbessern.&lt;br /&gt;
&lt;br /&gt;
   Fertig.&lt;br /&gt;
&lt;br /&gt;
   Weitere Informationen zur Installation von PHP stehen in der Datei &amp;quot;C:\Programme\Php\install.txt&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== PHP &amp;amp; Apache ==&lt;br /&gt;
&lt;br /&gt;
   Angenommen PHP ist auf dem Rechner im Verzeichnis &amp;quot;C:\Programme\Php&amp;quot; installiert (siehe vorheriges Kapitel).&lt;br /&gt;
   Jetzt wird über das Startmenü die Apache-Konfigurations-Datei &amp;quot;httpd.conf&amp;quot; im Editor (Notepad) geöffnet und &lt;br /&gt;
   ans Ende oder unter eine Stelle mit ähnlichen Einträgen werden folgende drei Zeilen eingefügt:&lt;br /&gt;
&lt;br /&gt;
   PHP4:&lt;br /&gt;
   LoadModule php4_module &amp;quot;C:/Programme/Php/sapi/php4apache.dll&amp;quot;&lt;br /&gt;
   AddModule mod_php4.c&lt;br /&gt;
   AddType application/x-httpd-php .php&lt;br /&gt;
&lt;br /&gt;
   PHP5: &lt;br /&gt;
   LoadModule php5_module &amp;quot;c:/php/php5apache.dll&amp;quot;&lt;br /&gt;
   AddType application/x-httpd-php .php&lt;br /&gt;
   # configure the path to php.ini&lt;br /&gt;
   PHPIniDir &amp;quot;C:/Programme/Php&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   Eventuell ist es möglich, dass die mittlere Zeile (&amp;quot;AddModule...&amp;quot;) schon an anderer Stelle in der Datei steht, &lt;br /&gt;
   dann muss sie nicht mehr eingefügt werden oder kann mit einem &amp;quot;#&amp;quot;-Zeichen als Kommentar unschädlich gemacht werden.&lt;br /&gt;
&lt;br /&gt;
   Falls ein Apache 2.0.x-Server benutzt wird muss in der ersten Zeile anstelle von &amp;quot;php4apache.dll&amp;quot; der &lt;br /&gt;
   Dateiname &amp;quot;php4apache2.dll&amp;quot; stehen.&lt;br /&gt;
&lt;br /&gt;
   Nach diesen Änderungen sollte PHP unter Apache laufen. &lt;br /&gt;
   Ob PHP funktioniert, sieht man, wenn man das im Anhang vorhandene Skript &amp;quot;phpinfo.php&amp;quot;&lt;br /&gt;
   aus dem Browser (nicht per Doppelklick) aufruft, während der Apache Server läuft.&lt;br /&gt;
   Dann wird eine Seite mit allen PHP-Informationen angezeigt. Auch der Pfad in dem PHP die &amp;quot;php.ini&amp;quot; erwartet. &lt;br /&gt;
   Sollte dieser sich von dem im vorigen Kapitel angegebenen Windows-Verzeichnis unterscheiden, sollte die Ini &lt;br /&gt;
   dorthin verschoben werden.&lt;br /&gt;
&lt;br /&gt;
   Weitere Informationen zur Installation von PHP stehen in der Datei &amp;quot;C:\Programme\Php\install.txt&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interbase-Extension für PHP laden ==&lt;br /&gt;
&lt;br /&gt;
   Damit PHP auf Interbase/Firebird Datenbanken zugreifen kann, müssen die Routinen, die das ermöglichen, beim &lt;br /&gt;
   Start von PHP als Erweiterung geladen werden. Dies geschieht mit Hilfe zweier Einträge in der &amp;quot;php.ini&amp;quot;.&lt;br /&gt;
   Erstens muss der Eintrag &amp;quot;extension_dir= &amp;quot; auf das Verzeichnis mit den Extension-Dlls gesetzt werden. Diese &lt;br /&gt;
   befinden sich standardmäßig im Verzeichnis &amp;quot;extensions&amp;quot;. Falls PHP zum Beispiel in &amp;quot;C:\Programme\Php&amp;quot; installiert &lt;br /&gt;
   wurde, liegen die Erweiterungs-Dlls im Verzeichnis &amp;quot;C:\Programme\Php\extensions&amp;quot;.&lt;br /&gt;
   Der Eintrag in der &amp;quot;php.ini&amp;quot; lautet dann:&lt;br /&gt;
 &lt;br /&gt;
   extension_dir = &amp;quot;C:\Programme\Php\extensions&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   Zweitens gibt es in der &amp;quot;php.ini&amp;quot; einen Abschnitt, der sich &amp;quot;Dynamic Extensions&amp;quot; nennt.&lt;br /&gt;
   Dort sind alle Erweiterungen in der Form &amp;quot;;extension=php_....dll&amp;quot; aufgeführt. Da ein Semikolon am Anfang steht, &lt;br /&gt;
   beachtet PHP diese Zeile nicht als Eintrag sondern als Kommentar.&lt;br /&gt;
   In der Zeile &amp;quot;;extension=php_interbase.dll&amp;quot; muss dieses Semikolon nun entfernt werden.&lt;br /&gt;
&lt;br /&gt;
   Der WebShop erfordert, dass Timestamps im richtigen Format übergeben werden. Dies geschieht durch folgende zwei&lt;br /&gt;
   Zeilen, die am besten ans Ende der &amp;quot;php.ini&amp;quot; gestellt werden:&lt;br /&gt;
   &lt;br /&gt;
   [Interbase]&lt;br /&gt;
   ibase.timestampformat=%m-%d-%Y %H:%M:%S&lt;br /&gt;
&lt;br /&gt;
   Jetzt sollten die PHP-Routinen für die Interbase-Anbindung zur Verfügung stehen.&lt;br /&gt;
   Falls dies nicht so ist, liegt es vielleicht daran, das die &amp;quot;php.ini&amp;quot; im falschen Verzeichnis liegt (Lösung siehe &lt;br /&gt;
   Ende vorletztes Kapitel) oder der Pfad im Eintrag &amp;quot;extension_dir=&amp;quot; falsch gesetzt ist.&lt;br /&gt;
&lt;br /&gt;
== Session Verzeichnis ==&lt;br /&gt;
   &lt;br /&gt;
   Verzeichnis namens &amp;quot;Sess&amp;quot; in C:\Programme\Apache Group\Apache\&amp;quot; oder im selben Verzeichnis wie &amp;quot;DocumentRoot&amp;quot; anlegen.&lt;br /&gt;
   In der Datei &amp;quot;php.ini&amp;quot; den Eintrag &amp;quot;session.save_path = &amp;quot; auf im ersten Falle&lt;br /&gt;
&lt;br /&gt;
   session.save_path = C:/Programme/Apache Group/Apache/Sess&lt;br /&gt;
   &lt;br /&gt;
   abändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== XML-Remote-Procedure-Calls für PHP und DELPHI/KYLIX ==&lt;br /&gt;
&lt;br /&gt;
   Grundsätzliche Infos zu xml-rpc: http://www.xmlrpc.com&lt;br /&gt;
   &lt;br /&gt;
   a) Aus dem Anhang die php-xmlrpc.zip entpacken und die Datei &amp;quot;xmlrpc.inc&amp;quot; ins &lt;br /&gt;
      Webverzeichnis unter &amp;quot;xmlrpc.inc.php&amp;quot; abspeichern.&lt;br /&gt;
&lt;br /&gt;
   b) Link zum Download der Delphi/Kylix Komponente xml-rpc: http://www.codepunk.com/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Systemanforderungen beim Benutzer/Client ==&lt;br /&gt;
&lt;br /&gt;
   + Der benutzte Browser muss Cookies akzeptieren und annehmen. Ansonsten ist ein Login nicht möglich.&lt;br /&gt;
     Die Einstellungen findet man z.B. im IE unter Extras-&amp;gt;Internetoptionen-&amp;gt;Datenschutz&lt;br /&gt;
     Hier sollte die Stufe &amp;quot;Mittel&amp;quot; eingestellt sein.&lt;/div&gt;</summary>
		<author><name>192.168.115.13</name></author>
	</entry>
	<entry>
		<id>https://wiki.orgamon.org/index.php?title=WebShop&amp;diff=4739</id>
		<title>WebShop</title>
		<link rel="alternate" type="text/html" href="https://wiki.orgamon.org/index.php?title=WebShop&amp;diff=4739"/>
		<updated>2005-02-28T11:26:16Z</updated>

		<summary type="html">&lt;p&gt;192.168.115.13: /* PHP installieren */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Den Apache-Webserver installieren ==&lt;br /&gt;
&lt;br /&gt;
   Falls erforderlich, aktuellste Version des Apache von http://www.apache.org downloaden.&lt;br /&gt;
   Zur Zeit (September 2002) gibts aber noch Probleme PHP 4.2.x auf dem neuen Apache 2.0.40 laufen zu lassen. &lt;br /&gt;
   Deshalb ist im Moment noch die Version 1.3.2x vorzuziehen.&lt;br /&gt;
   Im Index auf den Ordner &amp;quot;Binaries&amp;quot; klicken und danach auf den Ordner &amp;quot;Windows&amp;quot; bzw. &lt;br /&gt;
   &amp;quot;Linux&amp;quot;.&lt;br /&gt;
   Die gewünschte Datei herunterladen und entpacken.&lt;br /&gt;
   Das Setup Programm ausführen. An entsprechender Stelle &amp;quot;Service für alle User bereit &lt;br /&gt;
   stellen&amp;quot; auswählen.&lt;br /&gt;
&lt;br /&gt;
   Zum Test, ob der Server läuft, im Internet Browser einfach &amp;quot;localhost&amp;quot; oder die &lt;br /&gt;
   IP-Adresse &amp;quot;127.0.0.1&amp;quot; eingeben. Dann müsste folgender Text erscheinen: &lt;br /&gt;
   &amp;quot;Es klappt! Der Apache-Webserver ist auf dieser Website installiert!&amp;quot;&lt;br /&gt;
&lt;br /&gt;
== Den Apache-Webserver konfigurieren ==&lt;br /&gt;
&lt;br /&gt;
   Nach der Installation der Apache Software ist Startmenü um ein Verzeichnis reicher.&lt;br /&gt;
   Dort kann man unter anderem die Apache-Konfigurations Datei &amp;quot;httpd.conf&amp;quot; editieren.&lt;br /&gt;
   Den Eintrag &amp;quot;DocumentRoot=&amp;quot; sollte man auf das Verzeichnis setzen in dem die &amp;quot;index.html&amp;quot; &lt;br /&gt;
   oder eine andere Index-Datei der Homepage liegt, die geservt werden soll.&lt;br /&gt;
   Den Eintrag &amp;lt;Directory= &amp;gt; sollte man auf das gleiche Verzeichnis setzen.&lt;br /&gt;
&lt;br /&gt;
   Das sollte fürs erste reichen. Jedoch lassen sich in dieser Datei noch wesentlich mehr Funktionen &lt;br /&gt;
   einstellen, was zu erklären über den Umfang dieses HowTos hinausgehen würde.&lt;br /&gt;
   Die einzelnen Einträge sind in englisch kommentiert und erklären sich somit (fast) von selbst.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== PHP installieren ==&lt;br /&gt;
&lt;br /&gt;
   PHP ist von der Seite &amp;quot;www.php.net&amp;quot; zu beziehen. &lt;br /&gt;
   Am besten die neuste Version als .zip Datei herunterladen (auch falls eine .exe Datei vorliegen sollte).&lt;br /&gt;
   Nach dem Download die Datei entpacken, z.B. in &amp;quot;C:\Programme\Php&amp;quot;. Im Folgenden nehmen &lt;br /&gt;
   wir an, wir hätten dieses Verzeichnis gewählt.&lt;br /&gt;
&lt;br /&gt;
   Die Datei &amp;quot;php4ts.dll&amp;quot; (PHP4) bzw. &amp;quot;php5ts.dll&amp;quot; (PHP5) in &amp;quot;C:\Programme\Php&amp;quot; und die DLLs in &amp;quot;C:\Programme\Php\dlls&amp;quot; werden &lt;br /&gt;
   in das &amp;quot;Windows/System&amp;quot;-Verzeichnis (Win95/98) bzw. das &amp;quot;WINNT/System32&amp;quot;-Verzeichnis (WinNT/2000/XP) kopiert.&lt;br /&gt;
&lt;br /&gt;
   Besser ist es allerdings &amp;quot;C:\Programme\Php&amp;quot; zu Umgebungsvariablen PATH hinzuzufügen, da es zukünftige Updates erleichtert.&lt;br /&gt;
   Es muss dann nämlich nichts mehr kopiert werden.&lt;br /&gt;
&lt;br /&gt;
   Die Datei &amp;quot;C:\Programme\Php\php.ini-dist&amp;quot; oder besser &amp;quot;C:\Programme\Php\php.ini-recommended&amp;quot; &lt;br /&gt;
   wird ins &amp;quot;Windows&amp;quot;-Verzeichnis bzw. ins &amp;quot;WINNT&amp;quot;-Verzeichnis kopiert und in &amp;quot;php.ini&amp;quot; umbenannt.&lt;br /&gt;
   (Wird ein Apache 2.0.x Server benutzt, muss die Datei nicht kopiert werden, sondern der Pfad zur ini-Datei kann dem Apache&lt;br /&gt;
    in dessen conf-Datei angegeben werden, siehe nächstes Kapitel unter PHP5).&lt;br /&gt;
&lt;br /&gt;
   Dann muss sie im Editor geöffnet und der Eintrag &amp;quot;register_globals = Off&amp;quot; muss auf &amp;quot;On&amp;quot; gesetzt werden. &lt;br /&gt;
   Das ist wichtig, da ansonsten keine Variablen von einem Skript zum anderen übergeben werden können.&lt;br /&gt;
   Ausserdem muss &amp;quot;register_argc_argv = On&amp;quot; gesetzt werden. Dies ist in der &amp;quot;php.ini-recommended&amp;quot; auf &amp;quot;Off&amp;quot; gesetzt,&lt;br /&gt;
   um die Performance zu verbessern.&lt;br /&gt;
&lt;br /&gt;
   Fertig.&lt;br /&gt;
&lt;br /&gt;
   Weitere Informationen zur Installation von PHP stehen in der Datei &amp;quot;C:\Programme\Php\install.txt&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
== PHP &amp;amp; Apache ==&lt;br /&gt;
&lt;br /&gt;
   Angenommen PHP ist auf dem Rechner im Verzeichnis &amp;quot;C:\Programme\Php&amp;quot; installiert (siehe vorheriges Kapitel).&lt;br /&gt;
   Jetzt wird über das Startmenü die Apache-Konfigurations-Datei &amp;quot;httpd.conf&amp;quot; im Editor (Notepad) geöffnet und &lt;br /&gt;
   ans Ende oder unter eine Stelle mit ähnlichen Einträgen werden folgende drei Zeilen eingefügt:&lt;br /&gt;
&lt;br /&gt;
   PHP4:&lt;br /&gt;
   LoadModule php4_module &amp;quot;C:/Programme/Php/sapi/php4apache.dll&amp;quot;&lt;br /&gt;
   AddModule mod_php4.c&lt;br /&gt;
   AddType application/x-httpd-php .php&lt;br /&gt;
&lt;br /&gt;
   PHP5: &lt;br /&gt;
   LoadModule php5_module &amp;quot;c:/php/php5apache.dll&amp;quot;&lt;br /&gt;
   AddType application/x-httpd-php .php&lt;br /&gt;
   # configure the path to php.ini&lt;br /&gt;
   PHPIniDir &amp;quot;C:/Programme/Php&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   Eventuell ist es möglich, dass die mittlere Zeile (&amp;quot;AddModule...&amp;quot;) schon an anderer Stelle in der Datei steht, &lt;br /&gt;
   dann muss sie nicht mehr eingefügt werden oder kann mit einem &amp;quot;#&amp;quot;-Zeichen als Kommentar unschädlich gemacht werden.&lt;br /&gt;
&lt;br /&gt;
   Falls ein Apache 2.0.x-Server benutzt wird muss in der ersten Zeile anstelle von &amp;quot;php4apache.dll&amp;quot; der &lt;br /&gt;
   Dateiname &amp;quot;php4apache2.dll&amp;quot; stehen.&lt;br /&gt;
&lt;br /&gt;
   Nach diesen Änderungen sollte PHP unter Apache laufen. &lt;br /&gt;
   Ob PHP funktioniert, sieht man, wenn man das im Anhang vorhandene Skript &amp;quot;phpinfo.php&amp;quot;&lt;br /&gt;
   aus dem Browser (nicht per Doppelklick) aufruft, während der Apache Server läuft.&lt;br /&gt;
   Dann wird eine Seite mit allen PHP-Informationen angezeigt. Auch der Pfad in dem PHP die &amp;quot;php.ini&amp;quot; erwartet. &lt;br /&gt;
   Sollte dieser sich von dem im vorigen Kapitel angegebenen Windows-Verzeichnis unterscheiden, sollte die Ini &lt;br /&gt;
   dorthin verschoben werden.&lt;br /&gt;
&lt;br /&gt;
   Weitere Informationen zur Installation von PHP stehen in der Datei &amp;quot;C:\Programme\Php\install.txt&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Interbase-Extension für PHP laden ==&lt;br /&gt;
&lt;br /&gt;
   Damit PHP auf Interbase/Firebird Datenbanken zugreifen kann, müssen die Routinen, die das ermöglichen, beim &lt;br /&gt;
   Start von PHP als Erweiterung geladen werden. Dies geschieht mit Hilfe zweier Einträge in der &amp;quot;php.ini&amp;quot;.&lt;br /&gt;
   Erstens muss der Eintrag &amp;quot;extension_dir= &amp;quot; auf das Verzeichnis mit den Extension-Dlls gesetzt werden. Diese &lt;br /&gt;
   befinden sich standardmäßig im Verzeichnis &amp;quot;extensions&amp;quot;. Falls PHP zum Beispiel in &amp;quot;C:\Programme\Php&amp;quot; installiert &lt;br /&gt;
   wurde, liegen die Erweiterungs-Dlls im Verzeichnis &amp;quot;C:\Programme\Php\extensions&amp;quot;.&lt;br /&gt;
   Der Eintrag in der &amp;quot;php.ini&amp;quot; lautet dann:&lt;br /&gt;
 &lt;br /&gt;
   extension_dir = &amp;quot;C:\Programme\Php\extensions&amp;quot;&lt;br /&gt;
&lt;br /&gt;
   Zweitens gibt es in der &amp;quot;php.ini&amp;quot; einen Abschnitt, der sich &amp;quot;Dynamic Extensions&amp;quot; nennt.&lt;br /&gt;
   Dort sind alle Erweiterungen in der Form &amp;quot;;extension=php_....dll&amp;quot; aufgeführt. Da ein Semikolon am Anfang steht, &lt;br /&gt;
   beachtet PHP diese Zeile nicht als Eintrag sondern als Kommentar.&lt;br /&gt;
   In der Zeile &amp;quot;;extension=php_interbase.dll&amp;quot; muss dieses Semikolon nun entfernt werden.&lt;br /&gt;
&lt;br /&gt;
   Jetzt sollten die PHP-Routinen für die Interbase-Anbindung zur Verfügung stehen.&lt;br /&gt;
   Falls dies nicht so ist, liegt es vielleicht daran, das die &amp;quot;php.ini&amp;quot; im falschen Verzeichnis liegt (Lösung siehe &lt;br /&gt;
   Ende vorletztes Kapitel) oder der Pfad im Eintrag &amp;quot;extension_dir=&amp;quot; falsch gesetzt ist.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Session Verzeichnis ==&lt;br /&gt;
   &lt;br /&gt;
   Verzeichnis namens &amp;quot;Sess&amp;quot; in C:\Programme\Apache Group\Apache\&amp;quot; oder im selben Verzeichnis wie &amp;quot;DocumentRoot&amp;quot; anlegen.&lt;br /&gt;
   In der Datei &amp;quot;php.ini&amp;quot; den Eintrag &amp;quot;session.save_path = &amp;quot; auf im ersten Falle&lt;br /&gt;
&lt;br /&gt;
   session.save_path = C:/Programme/Apache Group/Apache/Sess&lt;br /&gt;
   &lt;br /&gt;
   abändern.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== XML-Remote-Procedure-Calls für PHP und DELPHI/KYLIX ==&lt;br /&gt;
&lt;br /&gt;
   Grundsätzliche Infos zu xml-rpc: http://www.xmlrpc.com&lt;br /&gt;
   &lt;br /&gt;
   a) Aus dem Anhang die php-xmlrpc.zip entpacken und die Datei &amp;quot;xmlrpc.inc&amp;quot; ins &lt;br /&gt;
      Webverzeichnis unter &amp;quot;xmlrpc.inc.php&amp;quot; abspeichern.&lt;br /&gt;
&lt;br /&gt;
   b) Link zum Download der Delphi/Kylix Komponente xml-rpc: http://www.codepunk.com/&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Systemanforderungen beim Benutzer/Client ==&lt;br /&gt;
&lt;br /&gt;
   + Der benutzte Browser muss Cookies akzeptieren und annehmen. Ansonsten ist ein Login nicht möglich.&lt;br /&gt;
     Die Einstellungen findet man z.B. im IE unter Extras-&amp;gt;Internetoptionen-&amp;gt;Datenschutz&lt;br /&gt;
     Hier sollte die Stufe &amp;quot;Mittel&amp;quot; eingestellt sein.&lt;/div&gt;</summary>
		<author><name>192.168.115.13</name></author>
	</entry>
</feed>