düzenlemek zorunda olduğum php sitesinde sorun var ?

Kodla Büyü

yeni.formator

Seçkin Üye
Seçkin Üye
Mesajlar
407
düzenlemek zorunda olduğum ilçe web sitesinde sorun var. php yi çok fazla bilmiyorum. php den anlayan birileri bana yardımcı olabilir mi ? haber ekleme bölümünde haberi yazıp ekle dediğimde "Dosya kaopyalanamiyor dosya adini kontrol edin." diyor. :(
 
<?php
if ($_REQUEST["kaydet"]) {
include('../Set/config.php');
include('../Set/opendb.php');
$tarih=date("d / m / Y");
$dosya_dizin=$_SERVER['DOCUMENT_ROOT']."/haber";
$tip=substr($resim_al_type,6,strlen($resim_al_type)-6);
if($tip=="pjpeg"){ // Burada eklenen dosyanin JPEG Resim mi degilmi oldugunu kontrol ediyorum ....
move_uploaded_file($resim_al,"$dosya_dizin/$resim_al_name") or die("Dosya kaopyalanamiyor dosya adini kontrol edin."); // Bu kodun çalismasi için Formun tanimlanmasi sirasinda MULTI PART FORM DATA eklenmis olmali
$sorgu="INSERT INTO haberler (baslik,haber,fotosu,tarih) VALUES ('$baslik','$haber','/haber/$resim_al_name','$tarih')";
$sonuc=mysql_query($sorgu);
} else {echo "Buraya sadece JPEG formatinda resim dosyasi ekleyebilirsiniz. Lütfen baska formatta dosya yüklemeyin!"; }
$sonuc = mysql_query("SELECT * FROM haberler order by id desc");
$veri=mysql_fetch_object($sonuc);

// BURDA DA HABERI ÖN IZLEME YAPIYORUZ KI GEREKIRSE YENIDEN DÜZENLEYEBILELIM...
echo("
<table width=\"95%\" border=\"0\" align=\"center\" cellpadding=\"3\" cellspacing=\"7\" class=\"tablokenar\">
<tr>
<td height=\"30\" valign=\"middle\" class=\"yonetimtablobg\"><div align=\"left\"><span class=\"Anabaslik\">Haber &Ouml;nizleme</span></div></td>
</tr>
<tr class=\"tablokenar\">
<td height=\"400\" valign=\"top\" bgcolor=\"#F9FBFB\">
");
$sonuc=mysql_query("SELECT * FROM haberler ORDER BY id DESC");
$veri=mysql_fetch_object($sonuc);
echo ("
<table width=\"95%\" border=\"0\" align=\"center\" cellpadding=\"0\" cellspacing=\"0\">
<tr>
<td><div align=\"center\"><span class=\"Anabaslik\">$veri->baslik<strong></span></div></td>
</tr>
<tr>
 
move_uploaded_file fonksiyonu, form ile sunucuya gönderilmiş olan dosyayı, istediğiniz bir klasöre taşımanızı sağlar. Eğer taşımayı yapacağınız klasörde yazma izni yoksa, ya da o dizin yoksa ya da dosyanın adını ($resim_al_name değişkeni nereden geliyor?) yanlış geliyorsa bahsettiğiniz hata oluşabilir.
Yapmanız gereken, öncelikle sitedeki haber klasörünün yazma izinlerinin 777 yada 666 olduğundan emin olun. Değilse izinleri bu hale ya da yazma izni olacak şekilde ayarlayın. Olmazsa move_uploaded_file fonksiyonunun başına // koyarak onu yorum haline getirerek çalışmamasını sağlayın. Yeni bir haber ve resim ekleyin, ardından veritabanını kontrol ederek, resim adresinin doğru bir şekilde veritabanına eklenip, eklenmediğini kontrol edin. Resim adresinin /haber/resimadi.jpg şeklinde oluşması gerekiyor. Farklı bir şekildeyse $resim_al_name değişkeni yanlış geliyor olabilir.
 
move_uploaded_file fonksiyonunun başına // koydum. haberi ekleyebildim. fakat resim kırık görünüyor. farklı formatlarda, jpg, JPEG, JPG vs. denedim, olmadı. Sanırım resimle alakalalı bi sorunumuz var, bu yansıyordu
 
veritabanını kontrol ettim, resmin adresi haber/resimadı.jpg şeklinde. yalnız şöyle bir sorun var sanırım, root klasöründe haber klasörü var. otomatikman habere eklediğimiz resim, burda klasör açarak haber klasörünün altında yer alıyordu. fakat şuan resmin buraya klasör açmadığını ve eklenmediğini görüyorum.
 
move_uploaded_file fonksiyonu resmi, haber klasörüne yükleyen fonksiyondur. Bunu // kullanarak iptal etmiş olduk. Bu nedenle resimleriniz haber klasörüne yüklenmez ancak veritabanına resmin adresi eklenecektir. // sembollerini silerek bu satırı yeniden etkinleştirirseniz resimleriniz haber klasörüne yüklenmeye başlayacaktır ancak fonksiyon bu yükleme işlemini bir nedenden yapamadığından hata veriyor.
Şimdi bu satırı tekrar etkinleştirin ve isminde Türkçe karakter (ç, ş, ı, ö, ü) olmayan bir resmi yüklemeyi deneyin. Ayrıca biraz önce yüklediğiniz resim adı veritabanına tam olarak eklenmiş miydi yoksa değişikliğe uğratılıp damı eklenmişti?
 
tam olarak eklenmişti. Resim131.jpg olarak. Dediklerinizi yaparak tekrar bi deniyorum hocam, teşekkür ederim
 
maalesef yine aynı hocam. Şöyle birşey dikkatimi çekti, son eklediğim birkaç habere girip, ordaki haber resmine sağ tıklayıp resmi farklı kaydet dediğimde 800700de hatası alıyorum.(ne olduğunu bilmemekle birlikte). Sonra root klasöründeki haber klasöründe son haberlerin de klasörlerinin olmadığını farkettim. 103, 104, 105 .. mesela. Ve bu klasörleri elle ben oluşturdum. içine olması gerekn resimleri ekledim. fakat durum yine aynı...
 
BBNET
Geri
Üst