Vytvorenie adresara

Programovacie jazyky, rady, poradňa...
jakub199
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 339
Registrovaný: 21 sep 2005, 17:36
Bydlisko: Severna stena K2 druhy by
Kontaktovať používateľa:

Vytvorenie adresara

Príspevok od používateľa jakub199 »

Ahojte vsetci
pokusam sa v php vytvorit adresar pouzivam na to funkciu

mkdir();
konkretne taky tvar

Kód: Vybrať všetko

mkdir  ("cesta",0777);
problem je v tom ze vytvori mi to adresar ale iba s pravami 755

prosim ako by som mohol vytvorit adresar s pravami 777 alebo aspon 775

skusal som to na php5.sk

dakujem
gwixt
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3912
Registrovaný: 24 sep 2005, 16:50
Bydlisko: Trash-Can

Príspevok od používateľa gwixt »

zrejme kvoli safemodu nijak
turtlak69
Guru
Guru
Príspevky: 2896
Registrovaný: 10 máj 2007, 15:58
Bydlisko: /dev/null

Príspevok od používateľa turtlak69 »

skus dat tomu scriptu ktorym vytvaras ten adresar tiez plne prava a tiez priecinok nad tym kde vytvaras ten adresar skus upravit tiez na prava 0777.
jakub199
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 339
Registrovaný: 21 sep 2005, 17:36
Bydlisko: Severna stena K2 druhy by
Kontaktovať používateľa:

Príspevok od používateľa jakub199 »

uz to mam vytvorim to pomocou mkdir a potom pomocou chmod zmenim prava ale aj tak sa mi to zda divne ze chmod zakazany nieje ale vytvorit rovno s pravami 777 to uz nie :?


//edit: hmmm tak pise mi ze ma prava 777 ale neuploadne mi do toho nic :x
caesar1987
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3001
Registrovaný: 02 okt 2005, 0:57
Bydlisko: Nové Zámky
Kontaktovať používateľa:

Príspevok od používateľa caesar1987 »

ja pouzivam tuto finkciu na vytvaranie vsetkych, aj vnorenych podadresarov a funguje vynikajuco

Kód: Vybrať všetko

function mk_dir($path, $rights = 0777){
  $folder_path = array(
    strstr($path, '.') ? dirname($path) : $path);

  while(!@is_dir(dirname(end($folder_path)))
          && dirname(end($folder_path)) != '/'
          && dirname(end($folder_path)) != '.'
          && dirname(end($folder_path)) != '')
    array_push($folder_path, dirname(end($folder_path)));

  while($parent_folder_path = array_pop($folder_path))
    if(!@mkdir($parent_folder_path, $rights))
      user_error("Can't create folder \"$parent_folder_path\".");
a tu je aj nejky ten upload aj s kontrolou

Kód: Vybrať všetko

if (isset($_POST['submitpobrazok'])) {

if  (isset($_POST['obrazoknazov']) && ($_POST['obrazoknazov'] != "")){            
      $dobrynazov = true;
      }else{      
         echo "<span style='color: #0000FC;'>Musíte zadať názov obrázka!</span><br />";
         $dobrynazov = false;
      }

if ((isset($_FILES['obrazokcesta']))&& ($_FILES['obrazokcesta']['name'] != "")){
     $upmeno= strtoupper($_FILES['obrazokcesta']['name']);
    if (preg_match('/\\.(JPG|JPEG|GIF|PNG)$/i', $upmeno)){
        $dobryobrazok = true;
        if (preg_match('/\\.(JPG|JPEG)$/i', $upmeno)) {
         $pripona = "jpg";
        }
        if (preg_match('/\\.(GIF)$/i', $upmeno)) {
         $pripona = "gif";
        }
        if (preg_match('/\\.(PNG)$/i', $upmeno)) {
         $pripona = "png";
        }   
     }else{
       $dobryobrazok = false;
       echo "<span style='color: #0000FC;'>Obrázok musí byť vo formáte jpg, jpeg, gif alebo png!</span><br />";
       }
   if ($_FILES['obrazokcesta']['size']/1024 > 300){
      $dobryobrazok = false;  
      echo "<span style='color: #0000FC;'>Obrázok m&ocirc;že mať veľkosť najviac 300kb!</span><br />";
   }
   
   if (getimagesize($_FILES['obrazokcesta']['tmp_name'])){
   list($iwidth, $iheight) = getimagesize($_FILES['obrazokcesta']['tmp_name']);
   
   if(($iwidth > 750) or ($iheight > 750) ){
      $dobryobrazok = false;  
      echo "<span style='color: #0000FC;'>Obrázok m&ocirc;že mať rozmery najviac 750x750!</span><br />";
    }
    }else{
    $dobryobrazok = false;
      echo "<span style='color: #0000FC;'>Obrázok musí byť obrázok!</span><br />";

    } 
     }     

$pridany = ($dobrynazov && $dobryobrazok);


---------------------
if ($pridany){
if ($_FILES['obrazokcesta']['error'] == UPLOAD_ERR_OK) {

  		   if (!file_exists("data/".$galeriacesta)){
           include("data/funkcie2.php");
           mk_dir("data/".$galeriacesta);
         }
  		   if (is_uploaded_file($_FILES['obrazokcesta']['tmp_name'])) {
  		  	$podarilosa = move_uploaded_file($_FILES['obrazokcesta']['tmp_name'], "data/".$galeriacesta. "/" . $nazovobr);
  		  	if ($podarilosa) {
  		  	?>
      		  <div class="clanky1">
            Obrázok bol pridaný.<br /><br />
            Sp&auml;ť na <a href="galeria.php?galeria=<?php echo $galeria; ?>">gal&eacute;riu</a>.
            </div>
  		  <?php
  		  	} else {
  		  		echo 'Chyba pri pridaní obrázka!';
  		  	  }
  		    }
        }else{
         	 echo 'Chyba pri prenose obrázka na server!'; 
        }
}
je to natvrdo skopcena cast kodu, takze dufam, ze tam nic nechyba
gwixt
Addict
Addict
Používateľov profilový obrázok
Príspevky: 3912
Registrovaný: 24 sep 2005, 16:50
Bydlisko: Trash-Can

Príspevok od používateľa gwixt »

jakub199 napísal://edit: hmmm tak pise mi ze ma prava 777 ale neuploadne mi do toho nic :x
a si si isty ze ma naozaj 777??? ako vravim .. ak je to na nejakom freehostingu kde je na 99% zapnuty safemode tak adresar s plnymi pravami nevytvoris
jakub199
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 339
Registrovaný: 21 sep 2005, 17:36
Bydlisko: Severna stena K2 druhy by
Kontaktovať používateľa:

Príspevok od používateľa jakub199 »

No uz som vyriesil vytvaram slozku pomocou ftp a funguje aj tak dakujem za pomoc
etel
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 232
Registrovaný: 16 okt 2006, 10:37
Kontaktovať používateľa:

Príspevok od používateľa etel »

jakub199 napísal:No uz som vyriesil vytvaram slozku pomocou ftp a funguje aj tak dakujem za pomoc
skus sa dohodnut s adminom aby ti nastavil prava na vytvaranie adresara .. ja som mal ten isty problem zabil som stym asi 3 hod. a potom som zistil ze v admine serveru sa to da nastavit ...
DomCZo
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 235
Registrovaný: 16 okt 2006, 22:49

Príspevok od používateľa DomCZo »

Ja to mam na freehostingu na profitux.cz tak isto, ze to nejde pomocou mkdir().
jakub199
Medium Star
Medium Star
Používateľov profilový obrázok
Príspevky: 339
Registrovaný: 21 sep 2005, 17:36
Bydlisko: Severna stena K2 druhy by
Kontaktovať používateľa:

Príspevok od používateľa jakub199 »

DomCZo napísal:Ja to mam na freehostingu na profitux.cz tak isto, ze to nejde pomocou mkdir().
ak by si chcel tak ma mozes kontaktovat bud na icq alebo SS a ti to poslem alebo to nieak uz prisposobime pomocou FTP mne to ide dobre
$dir = "wwwroot/foto/$cis";

Kód: Vybrať všetko

$ftp_server="test.php5.sk";
$ftp_user_name="";
$ftp_user_pass="";


$conn_id = ftp_connect($ftp_server);

$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

if (ftp_mkdir($conn_id, $dir)) {
 ftp_chmod($conn_id, 0777, $dir);
 echo "Priecinok pre kategoriu bol vytvoreny \n";
} else {
 echo "Niekde nastal problem \n";
}

ftp_close($conn_id);
Napísať odpoveď