Avatar billede Slettet bruger
26. oktober 2004 - 18:20 Der er 9 kommentarer og
1 løsning

Rettigheder og mapper

Hej

Jeg har et script der laver thumbnails til billeder i en angivet brugers mappe.
$pic_folder = "../grafik/45";

Først var min idé at scriptet selv skulle oprette en thumb-mappe i brugerens mappe (../grafik/45/thumb), men det er "selvfølgelig ikke tilladt på en off. server.

Jeg har et par brugere der via et admin-modul opretter andre brugere, og via en ftp-klient uploader billeder til de nyoprettede brugers mapper.
Når et medlem oprettes tildeles medlemmet automatisk et id-felt i databasen, og det idélle var at brugerens mappe blev oprettet samtidig, og første gang thumb-scriptet blev kørt, ville thumb-mappen også blive oprettet.

Som jeg ser det, er den eneste løsning at de brugere der uploader billederne skal lave alle mapperne og chmod'e dem.

Forslag til en løsning modtages meget gerne.
Avatar billede mollevp Nybegynder
26. oktober 2004 - 18:24 #1
Fx.

<?php
mkdir("/path/to/my/dir", 0700);
?>
Avatar billede Slettet bruger
26. oktober 2004 - 18:25 #2
mollevp...> Det er ikke tilladt på offentlige servere.
Avatar billede mollevp Nybegynder
26. oktober 2004 - 18:35 #3
Så måske noget ala det her:

<?php
// create directory through FTP connection
function FtpMkdir($path, $newDir) {
 
      $server='ftp.yourserver.com'; // ftp server
      $connection = ftp_connect($server); // connection
 
 
      // login to ftp server
      $user = "me";
      $pass = "password";
      $result = ftp_login($connection, $user, $pass);

  // check if connection was made
    if ((!$connection) || (!$result)) {
      return false;
      exit();
      } else {
        ftp_chdir($connection, $path); // go to destination dir
      if(ftp_mkdir($connection,$newDir)) { // create directory
          return $newDir;
      } else {
          return false;       
      }
  ftp_close($conn_id); // close connection
  }

}
?>
Avatar billede Slettet bruger
26. oktober 2004 - 18:45 #4
Det kunne godt fungere.

Hvor sikkert er sådan et script?
(altså, er det lige så sikkert som hvis jeg selv sad og brugte ftp?)
Avatar billede acid-head Nybegynder
26. oktober 2004 - 18:52 #5
Nu er ftp generelt ikke særlig sikkert, rmen egentlig sker der nøjagtig det samme, som hvis du brugte ftp selv..
Avatar billede Slettet bruger
26. oktober 2004 - 20:00 #6
Det fungerer. Nu er mit eneste tilbageværende problem, at jeg ikke kan chmod'e mappen.

Jeg får ingen fejl når jeg prøver.

Min kode:
<?php
// create directory through FTP connection

function FtpMkdir($path, $newDir) {
 
      $server='*****'; // ftp server
      $connection = ftp_connect($server); // connection
 
 
      // login to ftp server
      $user = "*****";
      $pass = "*****";
      $result = ftp_login($connection, $user, $pass);

  // check if connection was made
    if ((!$connection) || (!$result)) {
      return false;
      exit();
      } else {
        ftp_chdir($connection, $path); // go to destination dir
      if(ftp_mkdir($connection,$newDir)) { // create directory
          return $newDir;
      } else {
          return false;       
      }

  ftp_site($connection,"CHMOD 0777 $newDir");
  ftp_close($conn_id); // close connection
  }

}

$sti = "www/test/grafik/thumbs/";
$new = "43";
FtpMkdir($sti, $new);
?>
Avatar billede Slettet bruger
26. oktober 2004 - 22:12 #7
I min mappe "thumbs" skal alle undermapper være åben for skrivning.

Kan det evt. ordnes med en .htaccess i stedet for chmod?
Avatar billede mollevp Nybegynder
26. oktober 2004 - 23:09 #8
fungerer:
  ftp_site($connection,"CHMOD 0777 $newDir"); ikke??
Avatar billede Slettet bruger
27. oktober 2004 - 09:44 #9
mollevp...> Nej, der sker ingen ændring på mappen.
Avatar billede Slettet bruger
29. oktober 2004 - 12:31 #10
Æv, intet brugbart.

Lukker igen.
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