Tom: TOCTTOU und ein paar Fragen zur Verhinderung, Nachtrag

Beitrag lesen

Hello,

Angeblich werden auch Datenbankhandles (seit PHP 5.??) wieder sauber aufgelöst, wenn die Variable, die dieses speichert ihre Gültigkeit verliert.

Bei Scriptabbruch (ohne dass PHP abstürzt) würde dies also geschehen. Theoretisch wäre damit die Funktion mysql_free_result() auch (nahezu) überflüssig.

Achso nochwas: Bei komplexeren DMS (datenverändernden Datenbankzugriffen) musst Du auf jeden Fall dafür sorgen, dass der angestoßene Prozess sauber zuende geführt wird, also bei einem Userabort also der User klappt noch bevor die Response (anfängt) einzutrudeln das Browserfnester zu.

Dafür sind die Funktionen ignore_user_abort() und ihre Verwandten da.
http://de3.php.net/manual/de/function.ignore-user-abort.php

Und ich würde das Zurückgeben von Handles auf jeden Fall immer sauber ausprogrammieren, auch wenn sich PHP inzwischen angeblich selber darum kümmert ;-P

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de