15. juli 2004 - 13:30
Der er
19 kommentarer og 1 løsning
list gif og jpg filer fra en mappe + undermapper
Jeg skal bruge et script, som kan liste alle filnavne op på gif og jpg billederne i en mappe og tilhørende undermapper. Jeg skal bruge det til at ændre rettighederne på en masse billeder som er uploadet med et script, og nu skal jeg flytte alle disse billeder, men jeg må ikke downloade dem via ftp, fordi jeg ikke har rettighederne til filen. Jeg har prøvet chmod på en enkelt fil til 0777 og så kan jeg downloade dem via ftp. Det vil bare tage en krig at gøre dette for fil i hver mappe, da der er rigtig mange filer og nested mapper Jeg skal gerne bruge det ASAP, så der for de 200 point's
Annonceindlæg fra Barco
Hej, du kan bruge denne. Du skal ændre 'din mappe' til mappen navn. Du kan evt. slette koden der kan slette fotoerne. <?php $dir = $_SERVER["DOCUMENT_ROOT"] ."/din mappe/"; if(!isset($_GET['slet'])){ if (is_dir($dir)) { if ($dh = opendir($dir)) { while (($file = readdir($dh)) !== false) { if($file != "." && $file != ".." && substr($file, -4) != '.php') { echo "<a href=\"" . $file ."\">$file</a> "; echo $file . "<a href=\"" . $_SERVER['PHP_SELF'] . "?slet=" . $file . "\"> → delete</a><br />\n"; } } closedir($dh); } } }else{ if(file_exists($dir . $_GET['slet'])){ unlink($dir . rawurldecode($_GET['slet'])); echo "Filen: " . $_GET['slet'] . " blev slettet. <a href=\"" . $_SERVER['PHP_SELF'] . "\">Retur</a>"; }else{ echo "Filen: " . $_GET['slet'] . " findes ikke. <a href=\"" . $_SERVER['PHP_SELF'] . "\">Retur</a>"; } } ?>
Det her vil vist også kunne: <?php function make_tree($path){ //where $path is your source dir. $handle=opendir($path); while($a=readdir($handle)){ if(!preg_match('/^\./',$a)){ $full_path="$path/$a"; $list[]=$full_path; // REPLACE WITH OPTION IF NEEDED. if(is_dir($full_path)){ $recursive=make_tree($full_path); for($n=0; $n<count($recursive); $n++){ $list[]=$recursive[$n]; } } } } closedir($handle); return $list; } $dir = "."; $list = make_tree($dir); $sidste_mappe = ""; foreach ($list as $value) { if(substr($value, -4) == ".jpg" || substr($value, -4) == "gif") { echo "<a href='$value'>" . $value . "</a><br>"; } } ?>
Det var sådan her jeg ville have haft det til at se ud, og nu funker det :) <?php function make_tree($path){ //where $path is your source dir. $handle=opendir($path); while($a=readdir($handle)){ if(!preg_match('/^\./',$a)){ $full_path="$path/$a"; $list[]=$full_path; // REPLACE WITH OPTION IF NEEDED. if(is_dir($full_path)){ $recursive=make_tree($full_path); for($n=0; $n<count($recursive); $n++){ $list[]=$recursive[$n]; } } } } closedir($handle); return $list; } $dir = "."; $list = make_tree($dir); foreach ($list as $value) { $path_parts = pathinfo($value); if($path_parts['extension'] == ".jpg" || $path_parts['extension'] == "gif") { echo "<a href='$value'>" . $value . "</a><br>"; } } ?>
hej jaw, din første tager ikke små giffer med og din næste tager kun giffer *S*
Ahva? Tilgengæld tager din så alt der ikke er .php?! :)
Den skal så se sådan ud <?php function make_tree($path){ //where $path is your source dir. $handle=opendir($path); while($a=readdir($handle)){ if(!preg_match('/^\./',$a)){ $full_path="$path/$a"; $list[]=$full_path; // REPLACE WITH OPTION IF NEEDED. if(is_dir($full_path)){ $recursive=make_tree($full_path); for($n=0; $n<count($recursive); $n++){ $list[]=$recursive[$n]; } } } } closedir($handle); return $list; } $dir = "."; $list = make_tree($dir); foreach ($list as $value) { $path_parts = pathinfo($value); if($path_parts['extension'] == "jpg" || $path_parts['extension'] == "gif") { echo "<a href='$value'>" . $value . "</a><br>"; } } ?>
Nå ja, selvfølgelig :) Der skal lige fjernes . <punktum> ved jpg i linien: if($path_parts['extension'] == ".jpg" || $path_parts['extension'] == "gif") {
ja min lister alt i din mappe du sætter den til
Ja, ja jeg kan jo selv rette...
15. juli 2004 - 13:59
#10
*G*
15. juli 2004 - 14:00
#11
jaw har du fortand på at lave en fil der indeholder alle fotos i en session, som så kaldes fra en anden side med phplink, så man ikke kan se det rigtige fotonavn men kun id navnet??
15. juli 2004 - 14:10
#12
Tjah, hvis du: $_SESSION['filename'] = $row['filename']; echo "<a href='hshs.php?filename=".strip_tags(SID)."'>tekst</a>"; Så få du SESSION-id'en
15. juli 2004 - 14:24
#13
Den er jeg skisme ikke med på, men jeg stillede måske det lidt forkert. Jeg ridser lige op: arkivfil: <?php session_start(); $_SESSION['001'] = "image/foto001.jpg"; $_SESSION['002'] = "image/foto002.jpg"; $_SESSION['003'] = "image/foto003.jpg"; ?> --------------------------------------- linkfil: <?php session_start(); ?> <html><head> <?php <a href=arkivfil.php?001"><img src=ikon.gif"></a> <a href=arkivfil.php?003"><img src=ikon.gif"></a> ?> --------------------------------------------- men koderne er ikke rigtigte *S*
15. juli 2004 - 14:27
#14
Nej, det var nok også mig der var for hurtig... Sry. Er ved at pakke, så har desværre ikke tid til at bikse med det lige nu, men prøv Google, der kan du nok finde noget :(
15. juli 2004 - 14:36
#15
Google???
15. juli 2004 - 14:37
#16
Ja, søg efter "use of session ID" + php eller noget i den stil... Eller opret et spørgsmål...
15. juli 2004 - 17:38
#17
Nå, det hastede jo åbenbart ikke så meget alligevel... Men jeg vil betragte mit ovenstående foreslag som et svar, så her er et :)
16. juli 2004 - 06:27
#18
jaw Jeg brugte dit første forslag og rettede det lidt til, men det virkede helt perfekt. Sorry jeg ikke fik meldt tilbage igår, men jeg var lidt presset.. Super tak for hjælpen...
16. juli 2004 - 08:00
#19
Godmorgen... Det er bare helt i orden :) God sommer til Jer begge :)
16. juli 2004 - 11:16
#20
ja, hvis man skriver ASAP er det vel ASAP !!!
Vi tilbyder markedets bedste kurser inden for webudvikling