drupal-Session schreiben / benutzen
am 16.08.2010 - 13:10 Uhr in
Hi.
Ich baue grad ein Dateiupload-Modul mit Ajax.
Hierbei rufe ich für den Fileupload via Ajax die upload.php auf - funktioniert einwandfrei.
Jetzt möchte ich aber, dass in der upload.php Daten über die Datei in einer Sessionvariable gespeicht wird.
Dabei ist das Problem, dass er hierfür eine neue Session-ID generiert - vermutlich, da die upload.php nicht direkt im fileupload.module drin ist und damit extern von drupal...
Habe jetzt schon versucht, die Verbindung zwischen drupal und der upload.php via
include_once "C:/xampp/htdocs/dph/includes/bootstrap.inc";
drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
herzustellen aber er legt trotzdem einen eigenen SessionCokkie mit einer anderen ID an...
Jetzt ist halt das Problem, dass ich auf der nächsten Seite, auf der ich auf die Daten zugreifen möchte, wieder die eigentlich drupal-session bekomme...
Kann man das irgendwie händeln?
VG
- Anmelden oder Registrieren um Kommentare zu schreiben
Ma schaun ob ich das richtig
am 16.08.2010 - 13:28 Uhr
Ma schaun ob ich das richtig verstanden hab: Du schreibst ein eigenes Modul, welches über Ajax eine von dir erstellte Datei namens upload.php aufruft? Falls ja, da pack den Code der upload.php lieber in dein Modul, gib ihm über hook_menu einen eigenen Pfad und ruf dann statt der upload.php den in hook_menu erstellten Pfad auf. Das sollte das Problem lösen.
Ansonsten fehlt dir in der upload.php vermutlich nur das
<?php
session_start();
?>
Hi. mit session_start() gehts
am 16.08.2010 - 13:38 Uhr
Hi.
mit session_start() gehts nicht, da er dann ne neue, drupalunabhängige Session, erstellt.
Die erste Variante nehm ich mir mal vor! Könnte vom Gedanken gehen :-)
Hab vielen Dank.
Zitat: mit session_start()
am 16.08.2010 - 13:48 Uhr
mit session_start() gehts nicht
Puh, dann bin ich aber froh. Hatte diesen Teil der Antwort schon bissel bereut nachdem ich es geschrieben hatte :-)
Grundsätzlich solltest du etwas so (ich nenns mal) sensibles wie etwas, womit was auf deinen Server hochgeladen oder in die Datenbank eintragen werden kann, nicht vollkommen ungeschützt in einer Modul-unabhängigen Datei lagern. Innerhalb von Drupal kannst du an allen nötigen Stellen Berechtigungen abfragen und somit vor ungewünschtem Zugriff ganz leicht schützen.