lostyazilim
tr.link

Dosya yüklerken filtreleme sorunu

11 Mesajlar 1.681 Okunma
acebozum
tr.link

hk1337 hk1337 WM Aracı Kullanıcı
  • Üyelik 01.07.2016
  • Yaş/Cinsiyet 28 / E
  • Meslek -
  • Konum Ankara
  • Ad Soyad H** K**
  • Mesajlar 284
  • Beğeniler 48 / 17
  • Ticaret 3, (%100)
Merhaba arkadaşlar. Bir şey üzerinde çalışıyorum fakat uzun zamandır bu problemi çözemedim için bırakmıştım. Tekrar bu sorunu çözmeye çalışmaya karar verdim. PHP bilgim mükemmel derecede değil. Filtreleme kısmı aşağıdaki gibi:


// php|jsp|asp|htm|html|shtml|cgi
function upload ($dizin)
{
echo $uzanti;
if ( ($uzanti=="jsp")
|| ($uzanti=="php")
|| ($uzanti=="pl")
|| ($uzanti=="htm")
|| ($uzanti=="html")
|| ($uzanti=="shtml")
|| ($uzanti=="cgi")
|| ($uzanti=="php3")
|| ($_FILES["file"]["name"]==".htaccess")
)
{echo "dosya turu desteklenmiyor";

}
 

 

elektronikssl
webimgo

Randkin Randkin WM Aracı Kullanıcı
  • Üyelik 15.03.2016
  • Yaş/Cinsiyet 28 / E
  • Meslek Girişimci
  • Konum Antalya
  • Ad Soyad A** P**
  • Mesajlar 533
  • Beğeniler 57 / 82
  • Ticaret 15, (%100)
$uzanti = $_FILES["profile_photo"]["type"];
if ($uzanti == "image/jpeg" || $uzanti == "image/png" || $uzanti == "image/gif"){


} else {
die ('
Dosya formatı Gif, Png veya Gif olmalıdır.
yeniden denemek için tıklayın.
');
}


ben bu şekilde halletmiştim fakat farklı uzantı yüklemeye çalıştığınızda foto değişmiyor ve hata veriyor faakat uploads klasörüne gidiyor bunu çözememiştim.
 

 

teknowebdizayn teknowebdizayn WM Aracı Kullanıcı
  • Üyelik 06.08.2016
  • Yaş/Cinsiyet 44 / E
  • Meslek Web Tasarım ve Yazılım
  • Konum İstanbul Avrupa
  • Ad Soyad D** S**
  • Mesajlar 8
  • Beğeniler 0 / 3
  • Ticaret 0, (%0)
$allowed = array('gif','png' ,'jpg');
$filename = $_FILES['image_file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if(!in_array($ext,$allowed) ) {
echo 'error';
} else {
// Yükleme işlemini yap
}
HapyMan

kişi bu mesajı beğendi.

www.doruksucuka.com.tr - Freelance Web Site Tasarımı - Web Yazılım - Grafik Tasarım

hk1337 hk1337 WM Aracı Kullanıcı
  • Üyelik 01.07.2016
  • Yaş/Cinsiyet 28 / E
  • Meslek -
  • Konum Ankara
  • Ad Soyad H** K**
  • Mesajlar 284
  • Beğeniler 48 / 17
  • Ticaret 3, (%100)


// php|jsp|asp|htm|html|shtml|cgi
function upload ($dizin)
{
$uzanti = $_FILES["file"]["name"];
if ($uzanti != "image/jpeg" || $uzanti != "image/png" || $uzanti != "image/gif" || $uzanti != "image/jpg")
{
echo "
bu uzantı türü desteklenmiyor
";
}
else
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "
";
}
else
{resim upload kodları ve bilgisi}


Bu şekilde yaptım fakat sanırım senin dediğin hatanın benzeri bir şey oldu. Resim uzantısı harici dosyalar yüklenmeye çalıştığında bu uzantı desteklenmiyor yazısı çıkıyor fakat resimlerde yüklenmiyor. Bütün uzantılara izin vermiyor. Klasöre gelmiyor ama galiba bu durumda tek artı bu. Randkin

Ek Olarak: php bilgim fazla iyi olmadığı için pek anlayamadım kodları ama eğer scripte uygularsam büyük ihtimal tamamiyle bozulacak kodlama şekli yukarıdaki gibi.

teknowebdizayn adlı üyeden alıntı

$allowed = array('gif','png' ,'jpg');
$filename = $_FILES['image_file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if(!in_array($ext,$allowed) ) {
echo 'error';
} else {
// Yükleme işlemini yap
}
 

 

wmaraci
wmaraci

teknowebdizayn teknowebdizayn WM Aracı Kullanıcı
  • Üyelik 06.08.2016
  • Yaş/Cinsiyet 44 / E
  • Meslek Web Tasarım ve Yazılım
  • Konum İstanbul Avrupa
  • Ad Soyad D** S**
  • Mesajlar 8
  • Beğeniler 0 / 3
  • Ticaret 0, (%0)
$allowed = array(php,jsp,asp,htm,html,shtml,cgi);
$filename = $_FILES['file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if(!in_array($ext,$allowed) ) {
echo "Desteklenmeyen uzantı türü";
} else {
// Yükleme işleminin yapıldığı kodlar buraya gelecek
}


Bu şekilde uygularsan bozulacağını düşünmüyorum
 

 

www.doruksucuka.com.tr - Freelance Web Site Tasarımı - Web Yazılım - Grafik Tasarım

hk1337 hk1337 WM Aracı Kullanıcı
  • Üyelik 01.07.2016
  • Yaş/Cinsiyet 28 / E
  • Meslek -
  • Konum Ankara
  • Ad Soyad H** K**
  • Mesajlar 284
  • Beğeniler 48 / 17
  • Ticaret 3, (%100)
denedim fakat hata veriyor teknowebdizayn
 

 

teknowebdizayn teknowebdizayn WM Aracı Kullanıcı
  • Üyelik 06.08.2016
  • Yaş/Cinsiyet 44 / E
  • Meslek Web Tasarım ve Yazılım
  • Konum İstanbul Avrupa
  • Ad Soyad D** S**
  • Mesajlar 8
  • Beğeniler 0 / 3
  • Ticaret 0, (%0)


Select file to upload:




function upload ($dizin) {
$target_file = $dizin . basename($_FILES["file"]["name"]);
if(isset($_POST["submit"])) {
$allowed = array('gif','png' ,'jpg');
//$allowed = array('php','jsp','asp','htm','html','shtml','cgi');
$filename = $_FILES['file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if(!in_array($ext,$allowed) ) {
echo 'Desteklenmeyen uzantı türü';
} else {
if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) {
echo basename( $_FILES["file"]["name"]). " isimli dosya yüklendi.";
} else {
echo "Dosya yüklenemedi.";
}
}
}
}

//Örnek Kullanım
if ($_POST) {
upload("uploads/");
}
?>

Kardeşim bu şekilde çalışması lazım
HapyMan

kişi bu mesajı beğendi.

www.doruksucuka.com.tr - Freelance Web Site Tasarımı - Web Yazılım - Grafik Tasarım

HapyMan HapyMan Full Stack Developer Kullanıcı
  • Üyelik 14.05.2016
  • Yaş/Cinsiyet 32 / E
  • Meslek What do you do exactly ?
  • Konum İstanbul Avrupa
  • Ad Soyad T** T**
  • Mesajlar 561
  • Beğeniler 171 / 208
  • Ticaret 0, (%0)
şunu bi denermisin hocam :



if ($_POST) {

$dosya_adi=basename( $_FILES['file']['name']);
$isaret=".";
$pos = strrpos($dosya_adi, $isaret);
$len=strlen($dosya_adi);
$fark=$len-$pos;
$uzanti=substr($dosya_adi,$pos,$fark);
echo $uzanti;
}

?>







kaynak ve anlatım : https://www.hayaletinyeri.com/php-ile-dosya-uzantilarini-kontrol-etmek/
 

 

hk1337 hk1337 WM Aracı Kullanıcı
  • Üyelik 01.07.2016
  • Yaş/Cinsiyet 28 / E
  • Meslek -
  • Konum Ankara
  • Ad Soyad H** K**
  • Mesajlar 284
  • Beğeniler 48 / 17
  • Ticaret 3, (%100)

teknowebdizayn adlı üyeden alıntı



Select file to upload:




function upload ($dizin) {
$target_file = $dizin . basename($_FILES["file"]["name"]);
if(isset($_POST["submit"])) {
$allowed = array('gif','png' ,'jpg');
//$allowed = array('php','jsp','asp','htm','html','shtml','cgi');
$filename = $_FILES['file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if(!in_array($ext,$allowed) ) {
echo 'Desteklenmeyen uzantı türü';
} else {
if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) {
echo basename( $_FILES["file"]["name"]). " isimli dosya yüklendi.";
} else {
echo "Dosya yüklenemedi.";
}
}
}
}

//Örnek Kullanım
if ($_POST) {
upload("uploads/");
}
?>

Kardeşim bu şekilde çalışması lazım


çalıştı ama diğer kısımları silmek zorunda kaldım yani dosya yüklendiğinde x isimli dosya yüklendi yazısı çıkıyor önceki kodlarda dosya yüklendiğinde
Dosya Adı:
İndirme Linki:
Dosya Tipi:
Dosya Boyutu:
bu bilgileri senin verdiğin kodlara nasıl entegre edebilirim? Bu arada teşekkürler beni büyük bir dertten kurtardın.

echo "
Dosya adı: " . basename( $_FILES["file"]["name"]). . "
";
echo "İndirme Linki: site.com/".$dizin."/".$file_ismi. "
";
echo "Dosya Tipi: " . $_FILES["file"]["type"] . "
";
echo "Dosya Boyutu: " . ceil(($_FILES["file"]["size"] )/1024) . " Kb
";


HapyMan sağol denemeye gerek kalmadan halloldu gibi gözüküyor :)
 

 

teknowebdizayn teknowebdizayn WM Aracı Kullanıcı
  • Üyelik 06.08.2016
  • Yaş/Cinsiyet 44 / E
  • Meslek Web Tasarım ve Yazılım
  • Konum İstanbul Avrupa
  • Ad Soyad D** S**
  • Mesajlar 8
  • Beğeniler 0 / 3
  • Ticaret 0, (%0)

Select file to upload:




function upload ($dizin) {
$target_file = $dizin . basename($_FILES["file"]["name"]);
if(isset($_POST["submit"])) {
$allowed = array('php','jsp','asp','htm','html','shtml','cgi');
$filename = $_FILES['file']['name'];
$ext = pathinfo($filename, PATHINFO_EXTENSION);
if(!in_array($ext,$allowed) ) {
echo 'Desteklenmeyen uzantı türü';
} else {
if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) {
echo "
Dosya adı: " . basename( $_FILES["file"]["name"]). "
";
echo "İndirme Linki: http://mavidosya.net/yukle/ ".$dizin."/".$filename. "
";
echo "Dosya Tipi: " . $_FILES["file"]["type"] . "
";
echo "Dosya Boyutu: " . ceil(($_FILES["file"]["size"] )/1024) . " Kb
";
} else {
echo "Dosya yüklenemedi.";
}
}
}
}

//Örnek Kullanım
if ($_POST) {
upload("uploads/");
}
?>
hk1337

kişi bu mesajı beğendi.

www.doruksucuka.com.tr - Freelance Web Site Tasarımı - Web Yazılım - Grafik Tasarım
wmaraci
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al