Hallo ich habe ein script mit dem ich ein zipfile hochladen und entpacken kann. Das funzt auch soweit. Das hochladen und das entpacken in den Orner data geht reibungslos. Nun möchte ich noch das die Daten in ein Unterverzeichnis von data geschrieben werden sollen das genauso heist wie das hochgeladen zipfile nur ohne die endung zip.

z.b. peter.zip hochladen und in das Verzeicnis data/peter/entpacken, danach das Zipfile löschen. Habe schon alles mögliche ausprobiert krieg's aber nicht hin.

Ich weiß nicht wie man Dateinamen trennen kann und dann in eine Variable schreibt.

Code:
<?php

  require_once&#40;'pclzip.lib.php'&#41;;

    $allowed_types  = "&#40;zip&#41;";
    $ZIP          = $_FILES&#91;zip&#93;;


// check is file uploaded?
// ========================
   if &#40;isset&#40;$_FILES&#91;'zip'&#93;&#41; AND ! $_FILES&#91;'zip'&#93;&#91;'error'&#93;&#41; &#123;
   &#125;
   else&#123;
      $status=false;
      $message=$message."Es gab Probleme mit dem Datei-Upload.
";
   &#125;

// check files-extensions
// ============================================================================
    if &#40;preg_match&#40;"/\." . $allowed_types . "$/i", $_FILES&#91;"zip"&#93;&#91;"name"&#93;&#41;&#41;&#123;
    &#125;
    else&#123;
       $status=false;
       $message="Es d&uuml;rfen nur gepackte Dateien mit der Endung "
               ."\".zip\" hochgeladen "
               ."werden!
";
    &#125;
// hochladen
// =========
    move_uploaded_file&#40;$_FILES&#91;'zip'&#93;&#91;'tmp_name'&#93;, "/usr/local/etc/httpd/htdocs/xeniosne/zip/".$_FILES&#91;'zip'&#93;&#91;'name'&#93;&#41;;

// entpacken
// =========
	  $archive = new PclZip&#40;'/usr/local/etc/httpd/htdocs/xeniosne/zip/'.$_FILES&#91;zip&#93;&#91;name&#93;&#41;;
  if &#40;$archive->extract&#40;PCLZIP_OPT_PATH,'data/'&#41; == 0&#41; &#123;
die&#40;"Error &#58; ".$archive->errorInfo&#40;true&#41;&#41;;

     &#125;
?>
Achtung: Dies ist ein alter Thread im HTML und Webmaster Forum
Diese Diskussion ist älter als 90 Tage. Die darin enthaltenen Informationen sind möglicherweise nicht mehr aktuell. Erstelle bitte zu deiner Frage ein neues Thema im Forum !!!!!