move_uploaded_file ei toimi palvelimella

Argh!

Alla on kuvien uppimiseen tarkoitettu skripti. Move_uploaded_file ei jostain syystä siirrä kuvatiedostoa uuteen kansioon.

Uppiminen siis onnistuu, mutta tiedosto ei koskaan siirry oikeaan kansioonsa. Permissiot ovat oikein sekä lähettävässä- että kohde-kansiossa. Mikä tässä mättää?






//Maximi koko tähän. Esim. 350000 = 350kb.
$max_koko = 350000;
$nimi = $_POST['nimi'];
$linkki = $_POST['linkki'];
//Tarkastetaan päätteet ja tiedoston lähetys
if(isset($_POST["lahetys"]))
{
   if((!empty($_FILES["uploaded_file"])) && ($_FILES["uploaded_file"]['error'] == 0))
   {
      //Tarkastetaan kuva (koko ja pääte)
      $filename = basename($_FILES['uploaded_file']['name']);
      //Haetaan pääte
      $ext = substr($filename, strrpos($filename, '.') 1);
      
      //Tarkastetaan mime-tyyppi
      if (($ext == "jpg" || $ext == "jpeg") && ($_FILES["uploaded_file"]["type"] == "image/jpeg") && ($_FILES["uploaded_file"]["size"] < $max_koko) || ($ext == "gif") && ($_FILES["uploaded_file"]["type"] == "image/gif") && ($_FILES["uploaded_file"]["size"] < $max_koko) || ($ext == "png") && ($_FILES["uploaded_file"]["type"] == "image/png") && ($_FILES["uploaded_file"]["size"] < $max_koko))
      {
         //Valitaan paikka johon tiedosto tallennetaan
         $newname = realpath("../kuva/uusi_").$filename;
         
      //$newname = dirname(__FILE__).'../kuva/'.$filename;
      //Tarkastetaan, onko tiedosto jo serverillä
      if (!file_exists($newname))
         {
   
            if ((move_uploaded_file($_FILES['uploaded_file']['tmp_name'],$newname)))
            {
               
               $sql_lauseke = "insert into kuva(nimi,linkki, tiedostonimi) values ('$nimi','$linkki', 'uusi_$filename')";
               
               if(!$kysely = mysql_query($sql_lauseke))
               {
                  print "Haku epäonnistui. Virhe:".mysql_error();
               }
               else
               {
         print "Lähetys onnistui!";
   
               }
      }
            else
            {
         print "Virhe: Lähetyksen aikana tapahtui virhe!";
         }
      }
         else
         {
      print "Virhe: Tiedosto ".$_FILES["uploaded_file"]["name"]." on jo olemassa.";
      }
      }
      else
      {
      print "Virhe: Vain .jpg, .png ja .gif -päätteiset tiedostot kelpaavat. Max. koko on 350kb. ";
      }
   }
   else
   {
      print "Virhe: Tiedostoa ei lähetetty!";
   }
}

2

352

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • On!!

      Oudointa on, ettei php anna minkäänlaista ilmoitusta tiedonsiirron epäonnistumisesta, vaikka lisäisinkin skriptiin .mysql_error(); ......

    • juhakorkeapudas

      Ainakin tiedoston polussa näyttäisi olevan vikaa koska käytät siinä realpath-funktiota, joka poistaa relatiiviset viittaukset.

      "Oudointa on, ettei php anna minkäänlaista ilmoitusta tiedonsiirron epäonnistumisesta, vaikka lisäisinkin skriptiin .mysql_error()"

      - Funktio [move_uploaded_file] palauttaa joko true tai false sen mukaan, onnistuiko tiedoston siirto vai ei. mysql_error - funktiolla ei ole mitään tekemistä tämän asian kanssa.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mitä sä pelkäät

      Ettei tää etene?
      Ikävä
      103
      3873
    2. Satuit vain olemaan

      Ensimmäinen joka avasi minussa sen nähdyksi ja rakastetuksi tulemisen puolen. Pitäisi vain muistaa että et ole ainoa. Se
      Ikävä
      48
      2761
    3. Vieläkö toivot, että kuulisit

      Minusta? Vai suutuitko kun en pystynyt vastaamaan sinulle?
      Ikävä
      114
      2579
    4. 24/7 sinä mielessä, ihan jatkuvalla syötöllä

      Aamulla herätessä, päivällä melkein nonstop, illalla nukkumaan mennessä, öisin herätessä. Mikä viddu tässä on 🤣
      Ikävä
      39
      2088
    5. Jotain pitää nyt keksiä että sinut näkisi

      Ensiviikolla viimeistään. Tälle on pakko saada kunnon piste tai sitten aloitetaan loppuelämä yhdessä, tulen hulluksi muu
      Ikävä
      31
      1860
    6. Mulla tulee vaan niin

      Paha olo siitä mitä teidän välillä on. Vaikka se on sun päätös mitä haluat. Tuntuu että menetän jotakin vaikka tiedän et
      Ikävä
      26
      1668
    7. Rakastan sua

      Tänäänkin, eilenkin, varmaan huomennakin..
      Ikävä
      27
      1572
    8. Mitkä olivat viimeiset sanasi ikävoinnin kohteellesi

      Ja milloin? Mitä olisit sanonut jos olisit tiennyt että ne jäävät viimeisiksi -ainakin toistaiseksi?
      Ikävä
      76
      1419
    9. En tunne, en ymmärrä

      enkä muista 😱
      Ikävä
      22
      1378
    10. Olikohan se

      Kuitenkin niin, että kiinnostuit minusta ihan tosissaan. Loukkaannuit, kun en ollutkaan valmis tapaamaan sinua.. Pelkäsi
      Ikävä
      8
      1311
    Aihe