variable wenn php script zu ende merken? static?

Hinti

Grünschnabel
Hallo,
mir gelingt kein beispiel, eine class zu definieren, die eine static variable beinhaltet, und sich den wert merkt. ich meine es geht schon, aber nicht wenn der script zu ende ist.
Also wenn jetzt nun eine andere Seite.php aktiviert wird, welche diese Klasse auch verwenden möchte, die Klasse in einem anderen script aber schon mal verwendet wurde, will ich gerne den entsprechenden wert haben, den die andere php seite gesetzt hat?

oder geht sowas nur mit cookie und son zeugs?
vielen lieben dank aller die sich der frage annehmen, LG Hinti
 
Das geht bei PHP wunderschön per session_start() und dafür muss eine sogenannte Session-ID gespeichert werden in einem Cookie oder sie wird transportiert in der URL.

Suche nach Sessions und PHP.
PHP:
session_start();
$_SESSION["merken"] = "nie vergessen";
 
ich danke für eure antworten, nur ich befürchte falsch verstanden worden zu sein. ich wollte nur auf nummer sicher gehen das ich nichts falsch verstanden habe. ich will nämlich den typ 'resource' speichern und denke eigentlich das es nicht geht. Nicht scriptübergreifend!

ganz einfach ein altes leiden, wie ich schon gesehen habe, und es gibt auch viele lösungen, ich will eine mysql_pconnect Verbindung um stets auf eine bestehende Verbindung zugreifen zu können.

Aber ich glaube mitllerweile echt, das geht nicht. Nicht seitenübergreifend. Ein neuerlicher Aufruf der Funktion erstellt dann soweit ich das im Admin Tool erkennen kann immer wieder eine weitere Verbindung! (liegt vermutlich daran weil der server nicht als modul läuft)

quasi wenn der script erneut aufgerufen wird. Jetzt dachte ich mir halt diesen link von mysql in einer gloablen variable zu speichern, wie in c oder c++. Da hätte ich eine static oder globale Variable definiert, die immer zugreifbar ist.

sorry das ich erst jetzt mit den details rausrücke. Als Antwort würde mir natürlich ein NEIN reichen, denn dann weiß ich das ich richtig liege mit meiner vermutung.

ich danke euch.

kann man den typ resource nicht zerlegen? ist das nicht einfach eine float oder integer wie bei einem filehandle in c? das wäre super...
 
Eine Klasse kann durchaus auch gespeichert werden in einer Session, in dem sie serialisiert wird.

Aber PHP trennt nach Ablaufen des Skriptes die MySQL Verbindung automatisch. Von daher wirst du diese nur durch eine persistente Verbindung aufrecht erhalten können.

Persistente Datenbankverbindungen

Aber diese funktionieren auch nur, wenn PHP als Modul läuft.

/edit:
[phpf]serialize[/phpf]

Serializing Objects
 
Zuletzt bearbeitet:
Hi,

nein, Resourcen kannst Du nicht in einer Session speichern.

ganz einfach ein altes leiden, wie ich schon gesehen habe, und es gibt auch viele lösungen, ich will eine mysql_pconnect Verbindung um stets auf eine bestehende Verbindung zugreifen zu können.

Aber ich glaube mitllerweile echt, das geht nicht. Nicht seitenübergreifend. Ein neuerlicher Aufruf der Funktion erstellt dann soweit ich das im Admin Tool erkennen kann immer wieder eine weitere Verbindung! (liegt vermutlich daran weil der server nicht als modul läuft)

Aus dem Manual zu mysql_pconnect:
Hinweis: Beachten Sie, dass diese Art der Verbindung nur funktioniert. wenn Sie PHP als Modul-Version benutzen.

LG
 
Hi Felix,
Eine Klasse kann durhcaus auch gespeichert werden in einer Session, in dem sie serialisiert wird.
weiß ich schon, aber nicht kompatibel mit Typ resource

Aber PHP trennt nach Ablaufen des Skriptes die MySQL Verbindung automatisch. Von daher wirst du diese nur durch eine persistente Verbindung aufrecht erhalten können.
ich habe es oben schon so geschrieben mysql_pconnect, das IST eine persistenter verbindungsaufbau.

Aber diese funktionieren auch nur, wenn PHP als Modul läuft.
wie kann ich erkennen ob bei mir php als modul läuft?
[phpf]serialize[/phpf]
nicht kompatible mit typ 'resource'


Weil die Frage ein wenig unter gegangen ist, hier nochmal 2 fragen...

1) wie erkenne ich ob mein webserver als modul läuft?

2) ich will noch nicht ganz verstehen was am typ resource so kompliziert ist? wie ist dessen struktur? ich ergoogle da nichts!

danke für eure geduld. ich weiß es zu schätzen.
LG, Hinti
 
Zurück