Avatar billede kegud Nybegynder
26. februar 2004 - 12:03 Der er 4 kommentarer og
1 løsning

Liste dir og indsætte i mysql database

Jeg skal bruge et script der lister et dir og efter det skal den indsætte det i en mysql databasen, men hvis filen allerede ligger der skal den selvfølgelig ikke indsættes igen.

Nogen der kan hjælpe?
Avatar billede detox Nybegynder
26. februar 2004 - 12:37 #1
Du kan liste en mappe sådan her:

<?
$sti = "sti/til/mappe"; // dir/eller sti
if ($liste = listFiler($sti)) {
    foreach($liste as $navn) {
        echo $navn."<br />"; // Lav insert til din tabel her
    }
} else {
    echo "Der blev ikke fundet nogen filer.";
}

function listFiler($dir) {
    if (is_dir($dir)) {
        $d = dir($dir);
        while (false !== ($entry = $d->read())) {
            if (is_file($dir."/".$entry)) {
                $data[] = $entry;
            }
        }
        $d->close();
        if (isset($data)) return $data;
        else return false;
    } else {
        return false;
    }
}
?>

Så er det bare at lave inserts i din database istedet for echo. Hvis du så laver et UNIQUE index på feltet i tabellen og indsætter med INSERT IGNORE, slipper du for dubletter.
Avatar billede kegud Nybegynder
03. marts 2004 - 09:06 #2
Jatak. Det virker, men der er ca. 300 billeder og den ta'r kun ca. 120 af dem. Den timer ikke ud eller noget, den gør det på under 1 sekund. hvad kan der være galt?
Avatar billede detox Nybegynder
03. marts 2004 - 18:19 #3
Det ved jeg sørme ikke. Jeg har testet med en mappe med 1863 filer og den stemmer på en prik.
Avatar billede kegud Nybegynder
09. marts 2004 - 10:35 #4
Fair nok. Det virker for mig. Smid et svar og du skal blive belønnet.
Avatar billede detox Nybegynder
28. marts 2004 - 21:53 #5
Ok, værsgod.
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