phpbar.de logo

Mailinglisten-Archive

[php] phplib7.2 mit php 3_0_14 und mssql iis und nt

[php] phplib7.2 mit php 3_0_14 und mssql iis und nt

Oliver =?iso-8859-1?Q?Ro=DFbruch?= o.rossbruch_(at)_aixtema.de
Fri, 21 Jan 2000 11:37:26 +0100


hi ulf,

vielen dank für deine ausführliche schilderung meines problems :)
du hast den nagel auf den kopf getroffen :(
ich habe es mit odbc ans laufen gebracht :)
hast du eine ahnung was das an performance kostet?



Ulf Wendel wrote:

> Hallo Oliver,
>
> das Problem war mir unbekannt. Ich habe eine Nachricht an die
> PHPLIB User und Developer Liste geschrieben.
> Ich kann der Empfehlung von Egon nur folgen, benutze ODBC.
>
> Die PHPLIB verwendet eine mehrstufige Abstraktion zum Zugriff auf
> Sessiondaten. Dies hat den großen Vorteil, daß anders als bei
> PHP4 die Anzahl der Speichermedien (theoretisch) unbegrenzt ist.
> So können die Sessiondaten in einer SQL Datenbank, im Shared
> Memory, als DBM-File und im Ldap gespeichert werden.
>
> db_mssql.inc und CT_Sql scheinen bei Deiner Konfiguration
> verwendet zu werden. In db_mssql.inc wird die Funktion
> affected_rows() definiert, wobei auf eine nicht existierende
> Funktion zurückgegriffen wird.
>
> function affected_rows() {
>  return mssql_affected_rows($this->Query_ID);
> }
>
> ct_sql.inc ruft in der Funktion ac_store() affected_rows() auf,
> um zu prüfen oder das Anlegen (INSERT) neuer Sessiondaten
> erfolgreich war:
>
> if (  $this->db->affected_rows() == 0
>       && !$this->db->query($iquery))  {
>         $ret = false;
>    }
>
> session.inc wiederum benutzt ac_store() in freeze() Sessiondaten
> zu speichern. Spätestens dort wird eine Fehlermeldung produziert.
>
> Ein Workaround könnte darin bestehen die Funktion affected_rows()
> in db_mssql.inc zu verändern:
>
> function affected_rows() {
>  return 1;
> }
>
> Damit sollte das Session Management keine Fehler mehr
> produzieren. Eine richtige Lösung ist es jedoch nicht. Wer in
> alter Gewohnheit $db->affected_rows() aufruft wird verwirrt sein,
> warum nur ein Eintrag verändert wurde, obwohl doch mehrere
> gelöscht wurden...
>
> Das MS-SQL Interface ist einfach nicht der Hit, da kann auch die
> schönste PHPLIB nichts machen.
>

--
Ciao

Oliver

*********************************
aixTeMa Digitale Lösungen GbR
Oliver Roßbruch
Lütticher Str. 10-12
52064 Aachen
Germany
Tel.: +49 241 70515-35
Fax: +49 241 70515-15
mailto:o.rossbruch_(at)_aixtema.de
http://www.aixtema.de
*********************************




php::bar PHP Wiki   -   Listenarchive