Avatar billede nemlig Professor
16. juli 2008 - 10:05 Der er 3 kommentarer og
1 løsning

Udfør ikke zip-script, hvis ingen filer

Hej.
Jeg har et zip-script, som pakker alle "sql"-filer i en bestemt mappe.
Men jeg har det problem, at scriptet kører, selvom der ikke er nogen sql-filer. Hvis der ikke findes sql-filer i mappen, så skal scriptet ikke lave nogen zip-fil.

Mon jeg kunne få lidt hjælp til dette.
Koden ser sådan her ud:

function getAllFiles($directory) {
    $arrFiles = array();
    if (is_dir($directory)) {
        $d = dir($directory);
        while($entry=$d->read()) {
        $ext = explode(".",$entry);
        if (substr($entry,0,1) <> "." && $ext[1] == "sql") {
        $arrFiles[] = $directory."/".$entry;
            }
        }
    } 
    return $arrFiles;
} // end func getAllFiles
       
        $arrFiles = getAllFiles("./sql");    // get all files
        $zip = new ZipWriter();
        // define the path and the name of the zip file
        $zipFileName = "./zip/sql_".$date_jour.".zip";
        if (!$zip->open($zipFileName)) {
      $l_arrMessages[] = "ZIP file cannot be opened!";
    } else {
      $l_arrMessages[] = "ZIP file opened!";
    }

    echo "<strong>Adding Files:</strong><br>";
        for ($i=0; $i<count($arrFiles); $i++) {
            echo $arrFiles[$i]."<br>";
            $zip->addFileByName($arrFiles[$i], true);
        }
       
    echo "<br><br>";
        if ($zip->close())
        {
        $l_arrMessages[] = "ZIP file written and closed!";

            foreach (glob("./sql/*.sql") as $filename)
            {
                unlink($filename);
                echo "slettet" . $filename;
            }

        } else { $l_arrMessages[] = "ZIP file could not be closed";
        }
       
   
    for ($i=0; $i<count($l_arrMessages); $i++) {
      echo $l_arrMessages[$i]."<br />";
   
    }
Avatar billede jakobdo Ekspert
16. juli 2008 - 11:53 #1
Efter: $arrFiles = getAllFiles("./sql");    // get all files
tilføj: if(count($arrFiles) == 0) return false; //eller die('Ingen filer');
Avatar billede nemlig Professor
16. juli 2008 - 13:14 #2
Jamen - så fungerer det også. Mange tak for hjælpen. Sender du et svar? :)
Avatar billede jakobdo Ekspert
16. juli 2008 - 13:33 #3
Svar!
Avatar billede jakobdo Ekspert
16. juli 2008 - 14:04 #4
Takker for point.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester