login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Fotos copieren in een aangemaakte map

Offline Realtec - 09/03/2006 22:36 (laatste wijziging 09/03/2006 22:42)
Avatar van RealtecHTML interesse Hallo..

Ik ben bezig met een fotoalbum (admin gedeelte).
De fotos upload ik (met ftp) naar fotoalbum/upload/<map naam>
De fotos wil ik dan copieeren naar fotoalbum/fotos/<aangemaakte mapnaam>
Die aangemaakte mapnaam begint met 1 en bij elke album moet de mapnaam met 1 verhoogd worden.
Ik heb alleen geen enkel idee hoe ik dat moet aanpakken

Mijn code is
  1. <?php
  2. $directory = 'fotoalbum/upload/' .$_GET['verwerkdir']; //de directory uit de link halen
  3.  
  4. if($dir = opendir($directory))//de directory openen
  5. {
  6. while(($read = readdir($dir)) !== false)//de directory inlezen
  7. {
  8. if($read != "." && $read != "..")// als de file geen . of .. heet
  9. {
  10. $mapupload = 'fotoalbum/upload/';
  11. $mapfotos = 'fotoalbum/fotos/';
  12.  
  13. $image = $directory . '/' . $read;
  14.  
  15. $type = getimagesize($image);
  16.  
  17. if($type[2] == 2)//checken of het wel een jpg is
  18. {
  19. echo 'Foto is jpg';
  20.  
  21. //het bestand verplaatsen
  22. copy($image, $mapfotos . $read);
  23.  
  24. //bestand chmodden
  25. chmod ($mapfotos . $read, 0777);
  26. }
  27. else
  28. {
  29. echo 'Foto is geen jpg<br>';
  30. }
  31. }
  32. }
  33. }
  34. ?>

2 antwoorden

Gesponsorde links
Offline BramBo - 10/03/2006 09:39 (laatste wijziging 10/03/2006 10:37)
Avatar van BramBo JS gevorderde Hier een stukje code om een directory in telezen en deze om te zetten naar een getal waarmee het plaatje begint, Waar hij uit eindelijk de hoogste aan over houdt. En ook een hogere id aanmaakt. Zoals ik in de comments al schreef dienen de files opgebouwd te worden als :
GETAL_NAAM.EXT dus bijv. : 23_jantje.smitje

  1. <?php
  2. $imgid = 0;
  3. $currentpics = "/fotoalbum/fotos/";
  4.  
  5. if($dir = opendir($currentpics))
  6. {
  7. while(($line = readdir($dir)) != false)
  8. {
  9. #+-- Fetch hoogste
  10. #+-- > Er van uit gaande dat de files opgebouwd zijn als : /dir/dir/nr_file.ext (met als max 999)
  11. $high = preg_replace("/.*?(\d{1,3})_.*/i", "\\1", $line);
  12.  
  13. if($high > $imgid) $imgid = $high;
  14. }
  15. }
  16.  
  17. $imgid++;
  18.  
  19. ?>


edit : zag dat ik in mijn regex een ? vergeten was...
Offline Realtec - 10/03/2006 15:48
Avatar van Realtec HTML interesse Nou ik zoek eigenlijk wat anders..

Hij moet eerst kijken wat de map met de hoogste nr is en dan moet hij een nieuwe map aanmeken met een 1 hoger..
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.203s