Ergebnis 1 bis 12 von 12

Thema: Upload Script frage

Hybrid-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #1

    Upload Script frage

    Hi ,

    Also ich suche ein Script bzw. die befehle dafür also man soll über eine auswähl eine .zip
    (nur eine .zip) uploaden können wöhrend des Upload vorganges soll diese Zip datei so verschlüsselt werden das man sie nur mit hilfe eines Passwortes öffnen kann (welches man vorher fesgelegt hat ) so nur wie geht das ? Oder muss ich da gar mich ins CGI tera stürzen und ein Packer schreiben ?? oder geht noch mit PHP ??


    MFG

    Dadie

  2. #2
    Der entsprechende <input>-Tag:
    HTML-Code:
    <input name="datei" type="file" />
    Php-Code (für nur Zipfiles):
    PHP-Code:
    if($_FILES[datei][type] != "application/x-zip-compressed"){
        die(
    "Falscher Dateityp!");
    } else{
        
    copy($_FILES[datei][tmp_name], "files/dateiname.zip");

    Das ist jetzt so halb aus einem Buch abgeschrieben, halb selbstgemacht, und ungetestet.
    Für die Passwortfunktion fällt mir so spontan nichts ein, du könntest höchstens das Verzeichnis mit .htaccess schützten. Alternativ sollte eine Bitrotation möglich sein (fällt mir jetzt so spontan ein, Jeez hat das beim letzten Programmiercontest gemacht), darauf kommt niemand so schnell (aber ist dann natürlich nicht PW-geschützt).

    Geändert von Lukas (16.01.2005 um 14:52 Uhr)

  3. #3
    Üblicherweise würde man sowas dann wohl über https-Verbindung machen, aber AFAIK ist es nicht ganz einfach, eine aufzubauen. Eine Alternative wäre, dass du die Zip-Funktion zum hinzufügen eines Passwortes zum Archiv benutzt, so dass du einfach hinterher auch in deinem Zipper das Passwort eingibst und gut ist. Evtl. geht das auch automatisch mit der ZIP-Erweiterung von PHP, jedoch habe ich mich mit der nie beschäftigt.
    Noch eine (sehr komplizierte) Möglichkeit wäre, ein Skript zu bauen, dass die Datei ausgibt, wenn man sich eingeloggt hat (so wie beim Forum). Die Datei selbst liegt in einem Verzeichnis, auf das kein HTTP-Zugriff erlaubt ist, womit die Dateien dann wohl auch sicher vor externen Abrufen wären. Bei der Übertragung könnte ein böswilliger Hacker sie wahrscheinlich trotzdem lesen.
    Wenn mir zum Schluss noch ne Frage gestattet ist: Wozu brauchst du das verdammt? Willst du hochgeheime Dateien auf deinen Webspace laden??

  4. #4
    Zitat Zitat von getöteter_ork
    Wozu brauchst du das verdammt? Willst du hochgeheime Dateien auf deinen Webspace laden??
    Kann ich nett sagen wird ne Coole überraschung fürs Forum
    Das wichtige dabei ist halt nur das die datei irgentwie geschütz ist
    so das man sie nett öffnen kann auser man hat Admin rechte mir egal ob über FTP php oder sons wo drüber !

  5. #5
    Du könntest den Uploadstream versuchen durch eine mcrypt_generic()-Funktion laufen zu lassen bevor die ZIP-Datei dann abgelegt wird.

    Das Ding ist nur, das die ZIP-Datei nicht lokal auf dem Rechner der Saugenden decoded werden kann (es sei denn er hat einen eigenen PHP-Parser installiert oder ein spezielles Programm das mit diesem Algorythmus verschlüsselte Dateien entschlüsseln kann). Daher wird es wohl nötig sein ein Downloadscript zu basteln das eine verschlüsselte Datei wärend dem Downloadstream, gegen Vorlage des Passworts wieder entschllüsselt.

    Also wird die ZIP-Datei beim Upload verschlüsselt auf dem Server abgelegt und landet dann nach dem Download wieder entschlüsselt auf dem Rechner des Users... solange er das Passwort richtig im Script eingegeben hat.

    Lies dir die Manualseite zu der Funktion aufmerksam durch. Du musst nämlich einen Key initialisieren und AFAIK die Methode festlegen.

    Dieses Beispiel könnte auch weiterhelfen die Encryption zustande zu bekommen:
    http://www.phpreferenz.de/php_file_f...t-generic.html

  6. #6
    Jo also ich habe das ganze problem noch nett ganz gelöst (weil ich es woll bsiher nett so ganz kappiere) naja egal werde woll noch ein bischen googeln

    Jedoch habe ich ne Frage wie Frage ich die Grösse einer datei ab ?
    Also beim oder nach dem Upload ?

  7. #7
    Die Größe einer Datei in Byte liegt in $_FILES[dateiname][size] (wobei "dateiname" der Name des input-Felds der Upload-seite ist).

  8. #8
    thx

    Die umrechnung von byte auf kilobyte ist doch / 1024 oder ?

  9. #9
    Zitat Zitat von dadie
    Die umrechnung von byte auf kilobyte ist doch / 1024 oder ?
    Jein. Wenn du auf der Platte ein File mit der Größenangabe ein KB hast, ist das 1024 Byte groß. Allerdings ist ein KB genauer gesagt nur 1000 Byte groß.
    Link dazu

  10. #10
    aha und noch ne dumme frage wie runde ich auf ?
    also auf erste stelle sprich XXX,X den XXXXX,XXXXXXXXXXXXXXXX ist doch schon dämlich für einen filemanager ^^°

  11. #11
    Zitat Zitat von dadie
    aha und noch ne dumme frage wie runde ich auf ?
    also auf erste stelle sprich XXX,X den XXXXX,XXXXXXXXXXXXXXXX ist doch schon dämlich für einen filemanager ^^°
    round($variable,1);

  12. #12
    Zitat Zitat von Chocwise
    round($variable,1);
    Sorry habe mich vertahn klappt doch ^^°

    EDIT: 3 mal ediert in 10 sekunden meine fresse

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •