PHP-PDO Resimli İçerik Nasıl Yapılır?

Katılım
8 Nisan 2014
Mesajlar
10.298
Çözümler
199
Resimdeki gibi PHP sitemim admin panelinde textarea oluşturup veri tabanına bilgileri gönderebiliyorum. Fakat şöyle bir problemim var. Enter your address kısmının altına bir resim yükleme kısmıda yapmak istiyorum. Yani hem yazdıgım içerikleri hem resmi submit butonuna bastıgım zaman post etmesini istiyorum bunu nasıl yapabilirim? Yukarıdaki resim benim görselime ait degildir. Evde olmadıgım için görsellerden koydum. Teşekkürler.

php-html-form-textarea-example-blank.png
 
Son düzenleyen: Moderatör:
Selamlar, form ile submit edilen görseli base64 ile encode edip veritabanında normal textleri sakladığınız gibi (elbette daha büyük uzunluğu var) PDO ile uygun depolama tipiyle saklayabilir, tekrardan göstermeniz gerektiğinde base64 decode kullanabilirsiniz ki benim tavsiyem bu olacaktır.

Bir diğer seçenek ise type "file" inputu ekleyip (birden fazla istiyorsanız "file[]") bu formdan gelen inputu move_uploaded_file() fonksiyonuyla sunucuda oluşturacağınız bir dizine taşıyabilirsiniz.

Yüklenen dosyanın uzantısını (extension) kontrol etmeyi unutmayın; jpg, png, bmp, gif, vb. istediğiniz dosyayı aldığınızdan emin olun. Bu kontrolleri sunucuya yük bindirmemek açısından önden HTML5 form özellikleri ile de yapabilirsiniz ancak bu kontrollerin çok basit bir şekilde aşılabileceğini, PHP yani sunucu tarafında da kontrol etmeniz gerektiğini unutmayın.
 
Sergun beyin söylediğine katılıyorum en iyi yol Base64. Fakat bu veritabanına baya yük bindirir ve çok verimsiz bir yöntem.

Güvenlik ve kolaylık açısında class.upload ı kullanmanızı öneririm.Kendi içinde dahili dosya uzantısı listesi gelmekte.

 
Sergun beyin söylediğine katılıyorum en iyi yol Base64. Fakat bu veritabanına baya yük bindirir ve çok verimsiz bir yöntem.

Güvenlik ve kolaylık açısında class.upload ı kullanmanızı öneririm.Kendi içinde dahili dosya uzantısı listesi gelmekte.

Gerekli cache sistemi kurulduğunda arada pek bir fark olmayacaktır, base64 yönteminin tek eksisi dosyanın normal halinden yaklaşık %25 daha fazla yer kaplayacak olmasıdır (base64 algoritmasından dolayı).

Konu sahibinin projesi küçük bir işe benziyor, bunun için de base64 normal dizinde saklamaya göre çok daha kolay olduğundan, normal text saklanması gibi saklanabileceğinden daha tercih edilesi.
 
Gerekli cache sistemi kurulduğunda arada pek bir fark olmayacaktır, base64 yönteminin tek eksisi dosyanın normal halinden yaklaşık %25 daha fazla yer kaplayacak olmasıdır (base64 algoritmasından dolayı).

Konu sahibinin projesi küçük bir işe benziyor, bunun için de base64 normal dizinde saklamaya göre çok daha kolay olduğundan, normal text saklanması gibi saklanabileceğinden daha tercih edilesi.
sayenizde aydınlandım hocam tesekkür ederim herkese olayı anlamış bulunmaktayım :)
 
Uyarı! Bu konu 5 yıl önce açıldı.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.

Geri
Yukarı