Autor Zpráva
KaminekLP
Profil
Dobrý deň,

mám subdoménu attach.*********.eu, na ktorej mám jednoduchý systém uploadu obrázkov a ich následného zaradenia do súboru. Niečo ako ctrlv.cz, imgur atď., akurát jedoducho. Všetko je vporiadku, akurát keď nahrám (resp. vyberiem) nejaký súbor a kliknem na nahrať, tak mi to vypíše túto chybu:
Warning: move_uploaded_file(): The second argument to copy() function cannot be a directory in /data/web/virtuals/155647/virtual/www/domains/attach.*********.eu/index.php on line 30

Warning: move_uploaded_file(): Unable to move '/data/web/virtuals/155647/virtual/tmp/phpPYVSfd' to 'imghost/' in /data/web/virtuals/155647/virtual/www/domains/attach.*********.eu/index.php on line 30

Túto chybu som riešil aj s podporou hostingu, skúšali sme všetky možnosti a nič. Prosím o pomoc a ďakujem za každú odpoveď. Zatiaľ dovidenia.
M4n
Profil *
KaminekLP:
Túto chybu som riešil aj s podporou hostingu, skúšali sme všetky možnosti a nič
Bylo by dobré, kdybys nás přestal krmit bullshitem.

Ten warning to říká jasně: druhý argument (destination) nemůže být adresář. Musí to být celá adresa souboru, který má vzniknout z dočasných uploadovaných dat.
KaminekLP
Profil
Dobrý deň,

ďakujem. Ale teraz píše to isté, akurát, že na riadku 59. Lenže problém je v tom, že ja mám 57 riadkov a riadok číslo 59 nemám.
pcmanik
Profil
KaminekLP:
Super že si nám tých 57 riadkov ukázal. Skúsim asi použiť vešteckú guľu čo mám na poličke...
KaminekLP
Profil
<!doctype html>
 <head>
  <meta charset="UTF-8">
  <meta name="Author" content="KaminekLP_TV">
  <meta name="Keywords" content="prodisfor">
  <meta name="Description" content="Úložisko a Upload obrázkov pre ProDisFor.eu">
  <title>ProDisFor ATTACH | Upload</title>
  <link rel="stylesheet" href="main.css">
 </head>
 <body>
 <h1>ProDisFor ATTACHMENT | PRÍLOHA</h1>
 <br />
  <center><p><form method="post" enctype="multipart/form-data">
  <input type="file" name="img" />
  <input type="hidden" name="MAX_FILE_SIZE" value="512000" /><p>
  <br />
  <br />
  <input type="submit" value="Nahrať" />
</form>
<?php
 
if(isSet($_FILES) && $_FILES) // týmto sa pýtame, či $_FILES existuje a má nejakú hodnotu
{
  $img = $_FILES['img'];
 
  // skontrolujeme si priponu
  if(skontroluj_subor($img['name'])) {
    // súbor je OK, môžeme ho nahrať
    $adresar = '/data/web/virtuals/155647/virtual/www/domains/attach.prodisfor.eu/imghost';
    if(move_uploaded_file($img['tmp_name'], $adresar . $img['file']))
      echo '<div class="alert1">
  OK | Súbor úspešne nahratý.
</div>';
    else
      echo '<div class="alert">
  ERROR | Pri nahrávaní nastala nečakávaná chyba. Prosím, skúste neskôr.
</div>';
  }
  else {
    echo '<div class="alert">
  ERROR | Žiadny súbor nebol vybraný.
</div>';
  }
}
// deklarujeme funkciu
function skontroluj_subor($img)
{
  $povolene_pripony = array('jpg', 'png', 'gif', 'bmp'); // uložíme si do array prípony, ktoré akceptujeme
  $pripona  = pathinfo($img, PATHINFO_EXTENSION); // týmto získame príponu
  
  // jednoduchá kontrola - príponu porovnáme s povolenými
  if(in_array($pripona, $povolene_pripony)) return true; else return false;
}
?>
 </body>
</html>

Prepáčte, mám trochu problém s kódovaním, ale na stránke je to vpohode.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: