Php Dosya Yükleme Sorunu
-
Merhabalar, php ile veri tabanına dosya yükleme işlemi yapıyorum. Dosya ismi veri tabanına eklenmektedir. Ancak yükleme istediğim görsel belirttiğim klasöre gönderilmemektedir. Hiç bir hata almıyorum aslında. Dosya başarı ile yüklendi diyor. Ve veri tabanına dosya ismim ekleniyor. Ancak dosya istediğim klasöre taşınmıyor.
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
?>
<?php include 'config.php'; ?>
<!doctype html>
<html lang="en">
<head>
<?php include 'blocks/header.php'; ?>
</head>
<body>
<?php include 'blocks/navbar.php'; ?>
<?php include 'blocks/sidebar.php'; ?>
<!--content-->
<div class="content">
<div class="box-">
<h1>GÖrsel Ekle</h1>
</div>
<div class="clear" style="height: 10px;"></div>
<div class="box-container post-content">
<div class="table">
<table>
<thead>
<tr>
<th>Resim Başlığı</th>
<th class="hide">Resim Yolu</th>
<th>
<span class="fa fa-comment"></span>
</th>
<th>Tarih</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<a href= class="title">
</a>
<div class="magic-links">
<a href="">Düzenle</a> | <a href="" class="trash">Sil</a>
</div>
</td>
<td class="hide">
asda
</td>
<td class="hide">
</td>
<td class="hide">
<a href="#">etiket</a>
</td>
<td>
yorum
</td>
<td>
<span class="date">21 Saat Önce</span>
</td>
</tr>
</tbody>
</table>
</div>
</div>
<?php
// is_uploaded_file();
// move_uploaded_file();
if($_FILES){
$maxBoyut = 700000;
$dosyaUzantisi = substr($_FILES["dosya"]["name"],-4,4);
$dosyaAdi = rand(1,99999).$dosyaUzantisi;
$dosyaYolu = "dosya/".$dosyaAdi;
if($_FILES["dosya"]["size"]>$maxBoyut){
echo "<h2>dosya boyutu 700kb'dan yuksek olamaz...</h2>";
}else {
$dosya = $_FILES["dosya"]["type"];
if($dosya == "image/jpeg" || $dosya == "image/png" || $dosya == "image/gif" || $dosya == "application/zip"){
if(is_uploaded_file($_FILES["dosya"]["tmp_name"])){
$tasi = move_uploaded_file($_FILES["dosya"]["tmp_name"],$dosyaYolu);
$kayit = $db->prepare("insert into resimler set
resim_adi=?,
resim_turu=?,
resim_size=?
");
$resimTuru = $_FILES["dosya"]["type"];
$resimSize = $_FILES["dosya"]["size"];
$kayit->execute(array($dosyaYolu,$resimTuru,$resimSize));
if($tasi){
echo "<h2>dosya basarıyla yuklendi...</h2>";
header("refresh: 2; url=index.php");
}else {
echo "<h2>dosya tasınırken bir hata olustu...</h2>";
}
} else {
echo "<h2>dosya tasınırken bir hata olustu...</h2>";
}
}else {
echo "<h2>dosya formati sadece jpg,png yada gif formatinda olmalıdır...</h2>";
}
}
}else {
?>
<div class="box-container post-rightbar">
<div class="box-container post-rightbar">
<div class="box">
<h3>
Görsel Ekle
</h3>
<div class="box-content">
<form method="post" action="update.php" enctype="multipart/form-data">
<input type="file" name="dosya"><br>
<div class="publish-content">
<button type="submit">Yükle</button>
</div>
</form>
</div>
</div>
</div>
</div>
<?php } ?>
</div>
</body>
</html>
Kodlarım bu şekildedir. Yardımlarınızı bekliyorum teşekkür ederim.
-
dosya chmod unu 777 yaptın değil mi?
-
Kod leş, acilen türklerden dil öğrenmeyi bırakman lazım.
Neyse, kodda hata yok gibi. Klasöre yazma iznin olup olmadığını kontrol et bi hocam.
-
Selam hocam bu izinleri nasıl yapabilirim biraz araştırdım ama net bir şey bulamadım. Net bir kaynak veya basit bir şekilde anlatabilir misiniz?
-
Sorunu hallettim hocam teşkkür ederim. Çok sağolun
-
pala bunu yazdı
Selam hocam bu izinleri nasıl yapabilirim biraz araştırdım ama net bir şey bulamadım. Net bir kaynak veya basit bir şekilde anlatabilir misiniz?
Linux'da terminalden
chmod 755 -R dosya_yolu
-R klasör altındaki tüm dosyaların da iznini 755 yapar.
R koymazsan, sadece verdiğin yolu yapar.
Ordaki rakamlar ne anlama geliyo ya dersen de :
http://ryanstutorials.net/linuxtutorial/permissions.php
manyaki tarafından 27/Tem/17 16:13 tarihinde düzenlenmiştir -
manyaki bunu yazdıpala bunu yazdı
Selam hocam bu izinleri nasıl yapabilirim biraz araştırdım ama net bir şey bulamadım. Net bir kaynak veya basit bir şekilde anlatabilir misiniz?
Linux'da terminalden
chmod 755 -R dosya_yolu
-R klasör altındaki tüm dosyaların da iznini 755 yapar.
R koymazsan, sadece verdiğin yolu yapar.
Ordaki rakamlar ne anlama geliyo ya dersen de :
Filezilla uzerunden de sag tik > dosya izinleri diyerekten gerceklestirebilirsin bu islemi.
-
manyaki bunu yazdı
Kod leş, acilen türklerden dil öğrenmeyi bırakman lazım.
Neyse, kodda hata yok gibi. Klasöre yazma iznin olup olmadığını kontrol et bi hocam.
<?php include 'config.php'; ?> <!doctype html> <html lang="en"> <head> <?php include 'blocks/header.php'; //tablamalari include ettigin dosyada saglamalisin. ?> </head> <body> <?php include 'blocks/navbar.php'; //tablamalari include ettigin dosyada saglamalisin. ?> <?php include 'blocks/sidebar.php'; //tablamalari include ettigin dosyada saglamalisin. ?> <!--content--> <div class="content"> <div class="box-"> <h1>GÖrsel Ekle</h1> </div> <div class="clear" style="height: 10px;"></div> <div class="box-container post-content"> <div class="table"> <table> <thead> <tr> <th>Resim Başlığı</th> <th class="hide">Resim Yolu</th> <th> <span class="fa fa-comment"></span> </th> <th>Tarih</th> </tr> </thead> <tbody> <tr> <td> <a href= class="title"> </a> <div class="magic-links"> <a href="">Düzenle</a> | <a href="" class="trash">Sil</a> </div> </td> <td class="hide"> asda </td> <td class="hide"> </td> <td class="hide"> <a href="#">etiket</a> </td> <td> yorum </td> <td> <span class="date">21 Saat Önce</span> </td> </tr> </tbody> </table> </div> </div> <?php // is_uploaded_file(); // move_uploaded_file(); if ($_FILES) { $maxBoyut = 700000; $dosyaUzantisi = substr($_FILES["dosya"]["name"], -4, 4); $dosyaAdi = rand(1, 99999) . $dosyaUzantisi; $dosyaYolu = "dosya/" . $dosyaAdi; if ($_FILES["dosya"]["size"] > $maxBoyut) echo "<h2>dosya boyutu 700kb'dan yuksek olamaz...</h2>"; else { $dosya = $_FILES["dosya"]["type"]; if ($dosya == "image/jpeg" || $dosya == "image/png" || $dosya == "image/gif" || $dosya == "application/zip") { if (is_uploaded_file($_FILES["dosya"]["tmp_name"])) { $tasi = move_uploaded_file($_FILES["dosya"]["tmp_name"], $dosyaYolu); $kayit = $db->prepare("insert into resimler set resim_adi=?, resim_turu=?, resim_size=?"); $resimTuru = $_FILES["dosya"]["type"]; $resimSize = $_FILES["dosya"]["size"]; $kayit->execute(array( $dosyaYolu, $resimTuru, $resimSize )); if ($tasi) { echo "<h2>dosya basarıyla yuklendi...</h2>"; header("refresh: 2; url=index.php"); //bilgin olsun, contentten sonra header gelmemeli. } else echo "<h2>dosya tasınırken bir hata olustu...</h2>"; } else echo "<h2>dosya tasınırken bir hata olustu...</h2>"; } else echo "<h2>dosya formati sadece jpg,png yada gif formatinda olmalıdır...</h2>"; } } else { ?> <div class="box-container post-rightbar"> <div class="box-container post-rightbar"> <div class="box"> <h3> Görsel Ekle </h3> <div class="box-content"> <form method="post" action="update.php" enctype="multipart/form-data"> <input type="file" name="dosya"><br> <div class="publish-content"> <button type="submit">Yükle</button> </div> </form> </div> </div> </div> </div> <?php } ?> </div> </body> </html>
-
end bunu yazdımanyaki bunu yazdı
Kod leş, acilen türklerden dil öğrenmeyi bırakman lazım.
Neyse, kodda hata yok gibi. Klasöre yazma iznin olup olmadığını kontrol et bi hocam.
Kopyadiktan sonra sublime text acip ctrl + h yap, sonra alt + r yap
<a class="tbttag" title="(.*)" href="/tag/(.*)">(.*)</a>
Arat, php ile degistir.
Seyhin acilen pre tagi icerisindeki anahtar kelimeleri linklendirmeyi birakmasi gerek.
end tarafından 27/Tem/17 16:43 tarihinde düzenlenmiştir -
end bunu yazdıend bunu yazdımanyaki bunu yazdı
Kod leş, acilen türklerden dil öğrenmeyi bırakman lazım.
Neyse, kodda hata yok gibi. Klasöre yazma iznin olup olmadığını kontrol et bi hocam.
Kopyadiktan sonra sublime text acip ctrl + h yap, sonra alt + r yap
(.*)
Arat, php ile degistir.
Seyhin acilen pre tagi icerisindeki anahtar kelimeleri linklendirmeyi birakmasi gerek.
burada ki editör için demedim hocam, böyle php yazan bi türkler kaldı. onu demeye çalıştım. türklerin videosunu izlemesin arkadaş diye
-
manyaki bunu yazdıend bunu yazdıend bunu yazdımanyaki bunu yazdı
Kod leş, acilen türklerden dil öğrenmeyi bırakman lazım.
Neyse, kodda hata yok gibi. Klasöre yazma iznin olup olmadığını kontrol et bi hocam.
Kopyadiktan sonra sublime text acip ctrl + h yap, sonra alt + r yap
(.*)
Arat, php ile degistir.
Seyhin acilen pre tagi icerisindeki anahtar kelimeleri linklendirmeyi birakmasi gerek.
burada ki editör için demedim hocam, böyle php yazan bi türkler kaldı. onu demeye çalıştım. türklerin videosunu izlemesin arkadaş diye
PSR4 YOK, FRAMEWORK YALAN! NEY OOP MU? DUYMAYAYIM SAKIN BIR DAHA FENA OLUR!!
end tarafından 27/Tem/17 20:22 tarihinde düzenlenmiştir
