Hallo,
kann mir einer erklären, wie ich folgende Problematik lösen könnte?
Ich habe verschiedene Schemata in meiner PostGreSQL-DB, je nachdem welcher User sich einloggt, soll als globale Konstante dieses Schema gesetzt werden.
Login-Formular enthält also zB:
1. Schema (per select-option)
2. name
3. passwort
Bisher habe ich nur ein Schema verwendet und dieses in meiner settings.php so definiert:
Nun hat sich das aber anders ergeben und soll quasi beim Login dynamisch passieren...
Bis jetzt läuft das so ab:
Zuerst common.php:
Schema-Klasse:
Und dann beim Login:
Wobei $schema dann das jeweilige Schema enthält..
Aber dann verändert sich der Wert von $GLOBALS['DB_SCHEMA'] nie und ist immer 'sessions'.
Liegt es daran, dass man $GLOBALS nicht mehr verändern kann, wenn es einmal zugewiesen ist? Wenn ja, wie mach ich das sonst?
Ich hoffe die Problematik ist verständlich geschildert
Viele Grüße
Eric
kann mir einer erklären, wie ich folgende Problematik lösen könnte?
Ich habe verschiedene Schemata in meiner PostGreSQL-DB, je nachdem welcher User sich einloggt, soll als globale Konstante dieses Schema gesetzt werden.
Login-Formular enthält also zB:
1. Schema (per select-option)
2. name
3. passwort
Bisher habe ich nur ein Schema verwendet und dieses in meiner settings.php so definiert:
Code:
define("DB_SCHEMA", "schema1");
Nun hat sich das aber anders ergeben und soll quasi beim Login dynamisch passieren...
Bis jetzt läuft das so ab:
Zuerst common.php:
Code:
if(!isset($GLOBALS['DB_SCHEMA'])) {
$DB_SCHEMA = new Schema('sessions');
}
Schema-Klasse:
Code:
class Schema {
public $schema;
public function __construct($schema) {
$this->schema = $schema;
}
public function __toString()
{
return $this->schema;
}
}
Und dann beim Login:
Code:
$GLOBALS['DB_SCHEMA'] = new Schema($schema);
Aber dann verändert sich der Wert von $GLOBALS['DB_SCHEMA'] nie und ist immer 'sessions'.
Liegt es daran, dass man $GLOBALS nicht mehr verändern kann, wenn es einmal zugewiesen ist? Wenn ja, wie mach ich das sonst?
Ich hoffe die Problematik ist verständlich geschildert
Viele Grüße
Eric
Zuletzt bearbeitet: