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

373

    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. Nainen kokki autossa kammottavan kuoleman sähköauto-Teslan syttyessä tuleen.

      https://www.is.fi/autot/art-2000011652873.html Näin vaarallisia sähköautopalot voivat olla.
      Maailman menoa
      75
      5023
    2. Persuja ei aluevaltuustoissa näy

      Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.
      Maailman menoa
      16
      3403
    3. Päivän Riikka: Uudenkaupungin autotehdas hiljeni

      Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j
      Maailman menoa
      24
      2710
    4. Kerro kaivattusi nimi tai nimikirjaimet

      🌠 Tähdenlento! Kirjoittamalla kaivattusi nimen tai nimikirjaimet tähän, saattaa toiveesi toteutua.
      Ikävä
      58
      1760
    5. Miksi pitäisit enemmän

      Minusta kuin siitä toisesta?
      Ikävä
      47
      1576
    6. Tämmönen höpsö

      Höpönassu mä olen. En mikään erikoinen…hölötän välillä ihan levottomia. Tykkäisit varmasti jos olisin siellä sun vieress
      Suhteet
      44
      1346
    7. Mitä meidän välillä

      Tulee tapahtumaan vai tuleeko mitään?
      Ikävä
      94
      1342
    8. Alkuvuodesta poistuu työttömyyskorvaus kaikilta joilla on säästössä rahaa

      Tippuu korvaukselta iso määrä työttömiä.
      Maailman menoa
      235
      1243
    9. Hiljaisuus

      Tarkoittaa välinpitämättömyyttä, henkistä väkivaltaa ja kiusaamista. Olet valinnut hiljaisuuden.
      Ikävä
      71
      1025
    10. IS Viikonloppu 29.-30.11.2025

      Antti Skytältä 3-tasoinen ristikko. Pääkuvassa on harhauttava elementti, mikä saattaa hidastaa myös muiden kuin minun ra
      Sanaristikot
      54
      912
    Aihe