php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.04.2006, 16:16  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard 60 inaktive Sessions in Oracle trotz Close und Free

Hallo,

ich hole mir aus einer Oracle Datenbank via OCI8 ein PDF
Dokument und lasse es anzeigen :

Code:
function showpdf($file , $show) { 
   $size = filesize($file); 
   header("Content-type: application/pdf"); 
   header("Content-disposition: attachment; filename=".$name); 
   header("Content-Length: ".$size); 
   header("Pragma: no-cache"); 
   header("Expires: 0"); 
   readfile($file); 
}
include "path.php";
include "umgvar.php";
$conn = ocilogon($db_user, $db_pass, $db_tns) or die("Fehler: Es konnte keine Verbindung zur Datenbank hergestellt werden.");
$req="SELECT * FROM \"tblPDF\" WHERE \"ID\"=".$PDFID;
$stmt=OCIParse($conn, $req);
OCIExecute($stmt);
OCIFetch($stmt);
$bdatalob=OCIResult($stmt, "AR_Objekt");
$bdata=$bdatalob->load();
OCI-Lob->close();
ocicloselob($bdatalob);
ocifreecollection($bdata);
ocifreedesc($bdatalob);
ocifreecursor($stmt);

ocilogoff();
$dateiname="tmppdf.pdf";
$fp=fopen($dateiname,"w");
flock ($fp,2);
fputs ($fp,$bdata);
fclose ($fp);
showpdf($dateiname,"rechnung.pdf");
unlink ($dateiname);
Funktioniert auch Super. Aber ich habe nach jeder benutzung dieses Scripts eine inaktive Session auf dem Oracle Server.

Der natürlich dann immer meckert.

Habt ihr ne Idee ?

Gruss,

Werner
solitaer ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 20.04.2006, 16:30  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

OCI-Lob->close();

Was solln die Zeile mit dem Minus da dazwischen? Sicher, dass dein Script hier nicht einfach abbricht und gar nciht erst bis zum ocilogoff kommt? Mich würd wundern, wenn das PHP die obige Zeile bedingungslos und fehlerlos übergeht, das ist normalerweise ein Fataler Fehler...
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 20.04.2006, 16:35  
Erfahrener Benutzer
 
Registriert seit: 23.08.2007
Beiträge: 1.510
M3g4Star befindet sich auf einem aufstrebenden Ast
Standard

PHP-Code:
error_reporting(E_ALL); 
einfach mal setzen .. und schaun was raus kommt
M3g4Star ist offline   Mit Zitat antworten
Alt 20.04.2006, 17:42  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard

der fehler taucht nicht unter php auf sondern Oracle meckert bei 250 sessions.

@mepeisen

OCI-Lob->close();

habe ich entfernt.

drunter steht der richtige befehl!
solitaer ist offline   Mit Zitat antworten
Alt 20.04.2006, 22:08  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von mepeisen
OCI-Lob->close();

Was solln die Zeile mit dem Minus da dazwischen?
a. http://de.php.net/OCI-Lob->close
b. 'no version information, might be only in CVS'

Such Dir was aus...
  Mit Zitat antworten
Alt 20.04.2006, 22:12  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von Solitaer
drunter steht der richtige befehl!
This function is an alias of: OCI-Lob->close.

Doppelt hält besser. <g>

Zitat:
der fehler taucht nicht unter php auf sondern Oracle meckert bei 250 sessions.
250? Da würde ich auch meckern.

Wie wärs damit:
"ocilogoff -- Schliesst eine Datenbankverbindung zu Oracle"
... falls der Client nur bis 250 zählen kann...
  Mit Zitat antworten
Alt 20.04.2006, 23:20  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard

Habe ich schon probiert.

Der Befehl läuft aber dann auf einen Fehler da die PDF nicht mehr geöffnet wird.
solitaer ist offline   Mit Zitat antworten
Alt 21.04.2006, 10:07  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

OK, Ich muss zugeben, ich habe mit der Orcale-Extension noch nie gearbeitet, aber ich bin mehr als verwundert. Ich behaupte mal, dass an dieser Stelle die Extension richtiger Schrott ist. Ein Klassenname mit einem Minus dazwischen sollte verboten werden und unter PHP5 ist das Aufrufen einer statischen Methode über diesen Weg sowieso verboten. omg. Was ein Mist.

Sorry, aber das sah auf den ersten Blick sowas von falsch aus, dass ich nicht gedacht hätte, dass es das wirklich gibt...
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 21.04.2006, 18:28  
Erfahrener Benutzer
 
Registriert seit: 30.06.2008
Beiträge: 152
solitaer befindet sich auf einem aufstrebenden Ast
Standard

Jou,

dies ist auch falsch und ist auch auf einen Fehler gelaufen. War halt ein Tippfehler den ich vor dem Testen hier ins forum gesetzt habe.

Jedoch liegt es nicht an diesem Befehl das das nicht funktioniert.

Normalerweise wird ein DB Connect nach beendigung automatisch geschlossen.

Irgendwie ist es bei meinem Prog so - Mag es an dem Funktionsaufruf der PDF liegen oder was weis ich - das irgendwie die Connection zur Datenbank nicht geschlossen wird. Weil, so vermute ich, das PHP Script durch den Aufruf von Adobe unterbrochen wird.

Wenn dem so ist warum schließt php den Port nicht richtig mit den OCI_LOGOFF

???
solitaer ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
oracle inactive sessions, inactive sessions in oracle, oracle close inactive sessions, inaktive session nach oracleconnection, oracleconnection inactive session, inactive sessions oracle, oracle session inaktivität anzeigen, oracle nach längerer inaktivität, close oracle session, oracle session inaktiv, oracle php session beenden, php free oracle, php oracle close session, lob php session, oracel inactive sessions schliessen, php session oracle, inactiv sessions oracle, oracle 10 sessions aktiv /inaktiv, oracle sys session inaktive, zählen auch inaktive oracle sessions

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:15 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.