[PHP5] SafeMode und Uploads

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • [PHP5] SafeMode und Uploads

    Ich bin hier irgendwie am verzweifeln mit dem guten SafeMode.
    Ich frage mich, wie Joomla bei der Installation seiner PlugIns arbeitet.

    Schritt für Schritt:

    Ich lade genau wie zB. bei Joomla mein System auf den Webspace hoch. Dort führe ich eine Installation aus, die mir alle nötigen DB Tabellen etc. anlegt und evtl. noch ein paar Daten in eine INI Datei schreibt. Soweit so gut...

    Die so hochgeladenen Dateien und Verzeichnisse haben somit alle als UID "1003". Wenn ich nun etwas für mein System entwickeln möchte, dann lege ich eventuell neue Dateien auch per DW oder FTP an. Diese haben somit die selbe UID wie auch die bestehenden Dateien und Verzeichnisse des Systems. Somit klappt auch alles wunderbar...

    Nun habe ich es ähnlich wie bei Joomla bei mir so gemacht, dass ich meine geschriebenen PlugIns herunterlade und eine ZIP Datei erstelle.
    Wenn ich diese nun hochladen will um sie zu installieren, dann hat diese ZIP als UID "65534" und ich kann sie somit nicht entpacken oder geschweige denn nutzen, da die einzelnen Dateien vom PlugIn nach dem entpacken ( entpacken geht auch nur, wenn ich die gesamte Verzeichnisstruktur der ZIP vorher per FTP erstellen lasse ) alle "65534" als UID haben. In dem Moment, wo ich sie nutzen / ausführen möchte, kommt natürlich wieder der SafeMode zum tragen und gibt seine Meldungen aus.

    Ich frage mich, wie die das bei Joomla machen?
    Ich komm hier kein Stück weiter, da ja der Upload einer Datei/ZIP schon eine andere UID erzeugt.

    Ich hoffe ihr könnt mir da eine Richtung geben, wie ich arbeiten muss. Ich hab mir Joomla auch mal etwas angeschaut und die machen da bis auf das Hochladen des Systems selbst mit FTP garnichts.

    Mario

  • #2
    Das hört sich gerade so an, als würdest Du move_uploaded_file noch nicht kennen. Im SafeMode musst Du dieses Kommando benutzen, um Uploads aus dem temp-Verzeichnis an das gewünschte Ziel zu verschieben. Den temporären Namen entnimmst Du dem $_FILES-Array ($_FILES['feldname']["tmp_name"]).

    Danach kannst Du auch mit chmod die Rechte und mit chown/chgrp den Besitzer der hochgeladenen Datei ändern.

    Ich hoffe ich konnte helfen.

    Viele Grüße

    -SLind

    Kommentar

    Lädt...
    X