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

345

    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. Kysymys muille miehille

      Onko teille varattu nainen ongelma? Mikään muu naisessa ei töki kun se että hän on varattu. Kamppailen houkutuksen kanss
      Ikävä
      130
      7162
    2. Kaipaisin nyt kosketusta

      jota ei koskaan ole ollut. Saisinpa tuntea kätesi niskallani ja silittelemässä päätäni. Sulaisin varmasti siihen.
      Ikävä
      14
      2519
    3. Imaami kysyy, miksi pojat uivat ilman valvontaa

      Kalajoen särkät ovat usean kilometrin pituiset. Siellä on kylttejä, joissa varoitetaan rannan vaaroista. Siellä ei ole
      Maailman menoa
      263
      1204
    4. Sokea "ystävälle"

      Oletko oikeasti noin sokea?
      Ikävä
      100
      1009
    5. Mansikkatiloilla hyväksikäytetään ukrainalaisia

      Työolot ovat surkeita ja palkka kelvoton. https://yle.fi/a/74-20172942
      Maailman menoa
      161
      937
    6. En ymmärrä käytöstäsi

      Se on ollut eräänlaista hyväksikäyttöä. Että seura kyllä kelpaa palstan välityksellä silloin kun ei ole parempaakaan tek
      Ikävä
      137
      890
    7. Kerrostaloihin ilmalämpöpumput

      Ulkomailla näkee paljon ilmalämpöpumppuja kerrostalojen ulkoseinissä. Mikä estää taloyhtiötä hankkimasta niitä asuntoih
      Sinkut
      69
      879
    8. Kiitoksia kaikille epäasiallisesta sisällöstä liputtaneille

      Se ylimielisyys ja epäasiallisen julkaisun jakaminen ei sitten kantanut.
      Tuusniemi
      79
      764
    9. Kirkonkylän puliveivarit

      Hieman pistää silmään nuo puliukot ja akat kirkonkylän penkeillä ja S-marketin kulmilla. Tarttis varmaan tehdä asialle j
      Karstula
      13
      723
    10. Persaukinen puolankalainen kävi kerjäämässä paitaa

      Ja lippistä. Nauratti suuresti kun katsoin. Kukahan mahtanee olla? Voipi katsoa täältä jutun. https://www.youtube.com
      Puolanka
      18
      711
    Aihe