upload do precinka s aktualnym datumom a casom

Programovacie jazyky, rady, poradňa...
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

upload do precinka s aktualnym datumom a casom

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

cafte da sa cez upload script vytvorit na servery priecinok s právamy 777 a ako ho zmenit aby script vytvaral novy priecinok pri kazdom uploade a jeho nazov s aktualnym datumom a casom

Kód: Vybrať všetko

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

    if (file_exists("upload/" . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

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

skús takto, hádam som nespravil preklep lebo je to zase iba z hlavy:

Kód: Vybrať všetko

<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
&& ($_FILES["file"]["size"] < 20000))
  {
  if ($_FILES["file"]["error"] > 0)
    {
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
    }
  else
    {
    $datetime = date("d_m_Y_h_i");
    if(!dir_exists("upload/".$datetime)){
         mkdir("upload/".$datetime,0777);
     }
    $dir = $datetime."/";
    echo "Upload: " . $_FILES["file"]["name"] . "<br />";
    echo "Type: " . $_FILES["file"]["type"] . "<br />";
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

    if (file_exists("upload/" . $dir . $_FILES["file"]["name"]))
      {
      echo $_FILES["file"]["name"] . " already exists. ";
      }
    else
      {
      move_uploaded_file($_FILES["file"]["tmp_name"],
      "upload/" . $dir . $_FILES["file"]["name"]);
      echo "Stored in: " . "upload/"  . $dir . $_FILES["file"]["name"];
      }
    }
  }
else
  {
  echo "Invalid file";
  }
?>
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

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

niekde tam je chyba
Fatal error: Call to undefined function: dir_exists() in /9p/xf.cz/o/oskbudkovce/upload/upload_file.php on line 14
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

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

is_dir namiesto dir_exists :)
občas sa mi pletie syntax, to je nevýhoda práce vo veľa jazykoch súčasne
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

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

priecinok vytvori ale ma prava 411 a nic v nom neni vypise ze odoslane ale medzitym chybu:

Kód: Vybrať všetko

Warning: move_uploaded_file(upload/08_01_2010_01_42/rychlost.jpg): failed to open stream: Permission denied in /9p/xf.cz/o/oskbudkovce/upload/upload_file.php on line 30

Warning: move_uploaded_file(): Unable to move '/tmp/phpfLExxU' to 'upload/08_01_2010_01_42/rychlost.jpg' in /9p/xf.cz/o/oskbudkovce/upload/upload_file.php on line 30
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

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

skús zmazať druhý parameter z mkdir
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

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

super ...dakujem ti...len este jednu vec by som cel chcem nahravat viac suborov naraz mam to spravene ces jquerry v navode pise:

Kód: Vybrať všetko

NOTICE TO PHP USERS: The plugin's default behaviour generates an array of elements (sharing the same name). In order for this array to be properly identified and handled in PHP, you have add "[]" to name of your element.
eg.: 
<input type="file" name="MyStuff[]"...
takze do inputu som dal file[] a do upload.php ktory si mi upravil mam zmenit to file na co?..
http://www.oskbudkovce.mattus.eu/upload ... ation.html
..ak to chces pozriet tu to mas

(http://www.fyneworks.com/jquery/multipl ... -Uploading) a odtialto to je
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

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

tam ti to príde ako pole, čiže spracuješ každý prvok napríklad vo foreach cykle

Kód: Vybrať všetko

foreach($_FILES["file"] as $key => $file){


.... tu bude všetko čo tam máš, ale všade namiesto $_FILES["file"] dáš $file


}
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

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

takto si to myslel?
poslal aj tak iba jeden subor
posledny ktory som vybral
formular

Kód: Vybrať všetko

<form action="upload_file.php" method="post" enctype="multipart/form-data">
<label for="file">Filename:</label><br><br><br><br>
<input type="file" class="multi"  name="file[]" />
<br />
	
<input type="submit" name="submit" value="Submit" />
</form>
upload_file.php

Kód: Vybrať všetko

<?php 
foreach($_FILES["file"] as $key = $file){

if ((($file["type"] == "image/gif") 
|| ($file["type"] == "image/jpeg") 
|| ($file["type"] == "image/pjpeg")) 
&& ($file["size"] < 20000000)) 
  { 
  if ($file["error"] > 0) 
    { 
    echo "Return Code: " . $file["error"] . "<br />"; 
    } 
  else 
    { 
    $datetime = date("d_m_Y_h_i_s"); 
    if(!is_dir("upload/".$datetime)){ 
         mkdir("upload/".$datetime); 
     } 
    $dir = $datetime."/"; 
    echo "Upload: " . $file["name"] . "<br />"; 
    echo "Type: " . $file["type"] . "<br />"; 
    echo "Size: " . ($file["size"] / 1024) . " Kb<br />"; 
    echo "Temp file: " . $file["tmp_name"] . "<br />"; 

    if (file_exists("upload/" . $dir . $file["name"])) 
      { 
      echo $file["name"] . " already exists. "; 
      } 
    else 
      { 
      move_uploaded_file($file["tmp_name"], 
      "upload/" . $dir . $file["name"]); 
      echo "Stored in: " . "upload/"  . $dir . $file["name"]; 
      } 
    } 
  } 
else 
  { 
  echo "Invalid file"; 
  } 
}
?>
audiotrack
VIP
VIP
Používateľov profilový obrázok
Príspevky: 25958
Registrovaný: 09 sep 2005, 18:39
Kontaktovať používateľa:

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

foreach($_FILES["file"] as $key = $file){

chýba ti tam šípka za rovnása, ja som si tam našiel chybu a opravil to ale to si už asi mal zkopírované aj s chybou
DeeJay3
Light Star
Light Star
Používateľov profilový obrázok
Príspevky: 254
Registrovaný: 22 dec 2008, 19:45
Kontaktovať používateľa:

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

Kód: Vybrať všetko

foreach($_FILES["file"] as $key => $file){
dam odoslat a toto vypise

Kód: Vybrať všetko

Invalid fileInvalid fileInvalid fileInvalid fileInvalid file


//autoeditácia príspevku ( 08 Jan 2010, 17:56 )
skusal som vseliako to upravit no nejde to invalid file mi to vzdy vypisuje

len som rozmyslal nad inym sposobom ci sa name neda kazdemu suboru zadavat name="<?php time(); ?>" a takto by sa us kazdy volal inak ale ako zmenit ten upload?

to je ten zakldny co si mi zmenil

Kód: Vybrať všetko

<?php 
if ((($_FILES["file"]["type"] == "image/gif") 
|| ($_FILES["file"]["type"] == "image/jpeg") 
|| ($_FILES["file"]["type"] == "image/pjpeg")) 
&& ($_FILES["file"]["size"] < 20000000)) 
  { 
  if ($_FILES["file"]["error"] > 0) 
    { 
    echo "Return Code: " . $_FILES["file"]["error"] . "<br />"; 
    } 
  else 
    { 
    $datetime = date("d_m_Y_h_i_s"); 
    if(!is_dir("upload/".$datetime)){ 
         mkdir("upload/".$datetime); 
     } 
    $dir = $datetime."/"; 
    echo "Upload: " . $_FILES["file"]["name"] . "<br />"; 
    echo "Type: " . $_FILES["file"]["type"] . "<br />"; 
    echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />"; 
    echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />"; 

    if (file_exists("upload/" . $dir . $_FILES["file"]["name"])) 
      { 
      echo $_FILES["file"]["name"] . " already exists. "; 
      } 
    else 
      { 
      move_uploaded_file($_FILES["file"]["tmp_name"], 
      "upload/" . $dir . $_FILES["file"]["name"]); 
      echo "Stored in: " . "upload/"  . $dir . $_FILES["file"]["name"]; 
      } 
    } 
  } 
else 
  { 
  echo "Invalid file"; 
  } 
?>
Napísať odpoveď