• 18-09-2015, 21:12:47
    #1
    Merhaba arkadaşlar, şu kodu kullanarak veritabanına haber kaydettiriyordum fakat ne olduysa çalışmamaya başladı.Veritabanına eklemiyor. Yardımcı olurmusunuz ?

    <?php
    if(isset($_FILES['files'])){
        $errors= array();
    	foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
    		$file_name = $key.$_FILES['files']['name'][$key];
    		$file_size = $_FILES['files']['size'][$key];
    		$file_tmp = $_FILES['files']['tmp_name'][$key];
    		$file_type = $_FILES['files']['type'][$key];
    		$baslik = $_POST["baslik"];	
    		$baslik2 = $_POST["baslik2"];	
    		$baslik3 = $_POST["baslik3"];	
    		$haber2 = $_POST["haber2"];	
    		$haber3 = $_POST["haber3"];	
    		$haber = $_POST["haber"];
            if($file_size > 2097152){
    			$errors[]='File size must be less than 2 MB';
            }		
            $query="INSERT INTO haberler (baslik, haber, resim, baslik2, haber2, baslik3, haber3) values ('$baslik','$haber','$file_name','$baslik2','$haber2','$baslik3','$haber3'); ";
            $desired_dir="../haber";
            if(empty($errors)==true){
                if(is_dir($desired_dir)==false){
                    mkdir("$desired_dir", 0700);		// Create directory if it does not exist
                }
                if(is_dir("$desired_dir/".$file_name)==false){
                    move_uploaded_file($file_tmp,"$desired_dir/".$file_name);
                }else{									// rename the file if another one exist
                    $new_dir="$desired_dir/".$file_name.time();
                     rename($file_tmp,$new_dir) ;				
                }
    		 mysql_query($query);			
            }else{
                    print_r($errors);
            }
        }
    	if(empty($error)){
    		echo "Success";
    	}
    }
    ?>
  • 18-09-2015, 21:26:04
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Verdiği hata nedir ?
  • 18-09-2015, 21:29:13
    #3
    grafiemo adlı üyeden alıntı: mesajı görüntüle
    Verdiği hata nedir ?
    Hata vermiyor hocam, veritabanına kaydetmiyor.
  • 18-09-2015, 21:33:10
    #4
    Sayfanızın başına aşağıdaki kodu koyup tekrar dener misiniz hata mesajı alabilecek misiniz.

    Kod :
    <?php
        error_reporting(E_ALL);
    ?>
  • 18-09-2015, 21:47:30
    #5
    grafiemo adlı üyeden alıntı: mesajı görüntüle
    Sayfanızın başına aşağıdaki kodu koyup tekrar dener misiniz hata mesajı alabilecek misiniz.

    Kod :
    <?php
        error_reporting(E_ALL);
    ?>
    Yine bir hata vermedi hocam. Kodlara tekrar baktımda gözümden kaçan birşey varmı diye, bulamadım.
  • 18-09-2015, 21:49:43
    #6
    hatayı bulmak ıcın sadece tablo da tek ısımden baslayın sonra devam edın tam hata nerdde bulun yksa ısın ıcınden cıkılmaz hal alabılıor
  • 18-09-2015, 21:58:37
    #7
    tarantula901 adlı üyeden alıntı: mesajı görüntüle
    hatayı bulmak ıcın sadece tablo da tek ısımden baslayın sonra devam edın tam hata nerdde bulun yksa ısın ıcınden cıkılmaz hal alabılıor
    Nasıl bir yol izlemeliyim hocam, tam olarak anlamadım.


    Ekleme: Kodlar localhostta çalışıyordu siteye yükleyince çalışmamaya başladı galiba.
  • 18-09-2015, 22:16:00
    #8
    Dosya upload kodunu iptal edip normal mysql sorgusu yaptığınızda veritabanına veri girebiliyor musunuz bir deneyin. Sunucunuzda dosya yükleme için kullandığınız kütüphaneler aktif olmaya bilir.

    <?php
        $baslik = $_POST["baslik"];   
        $baslik2 = $_POST["baslik2"]; 
        $baslik3 = $_POST["baslik3"]; 
        $haber2 = $_POST["haber2"];   
        $haber3 = $_POST["haber3"];   
        $haber = $_POST["haber"];
          
        $file_name = "a.jpg"
          
        $query="INSERT INTO haberler (baslik, haber, resim, baslik2, haber2, baslik3, haber3) values ('$baslik','$haber','$file_name','$baslik2','$haber2','$baslik3','$haber3'); ";
    
        mysql_query($query);
    ?>
  • 18-09-2015, 23:03:31
    #9
    Spartan adlı üyeden alıntı: mesajı görüntüle
    Merhaba arkadaşlar, şu kodu kullanarak veritabanına haber kaydettiriyordum fakat ne olduysa çalışmamaya başladı.Veritabanına eklemiyor. Yardımcı olurmusunuz ?

    <?php
    if(isset($_FILES['files'])){
        $errors= array();
    	foreach($_FILES['files']['tmp_name'] as $key => $tmp_name ){
    		$file_name = $key.$_FILES['files']['name'][$key];
    		$file_size = $_FILES['files']['size'][$key];
    		$file_tmp = $_FILES['files']['tmp_name'][$key];
    		$file_type = $_FILES['files']['type'][$key];
    		$baslik = $_POST["baslik"];	
    		$baslik2 = $_POST["baslik2"];	
    		$baslik3 = $_POST["baslik3"];	
    		$haber2 = $_POST["haber2"];	
    		$haber3 = $_POST["haber3"];	
    		$haber = $_POST["haber"];
            if($file_size > 2097152){
    			$errors[]='File size must be less than 2 MB';
            }		
            $query="INSERT INTO haberler (baslik, haber, resim, baslik2, haber2, baslik3, haber3) values ('$baslik','$haber','$file_name','$baslik2','$haber2','$baslik3','$haber3'); ";
            $desired_dir="../haber";
            if(empty($errors)==true){
                if(is_dir($desired_dir)==false){
                    mkdir("$desired_dir", 0700);		// Create directory if it does not exist
                }
                if(is_dir("$desired_dir/".$file_name)==false){
                    move_uploaded_file($file_tmp,"$desired_dir/".$file_name);
                }else{									// rename the file if another one exist
                    $new_dir="$desired_dir/".$file_name.time();
                     rename($file_tmp,$new_dir) ;				
                }
    		 mysql_query($query);			
            }else{
                    print_r($errors);
            }
        }
    	if(empty($error)){
    		echo "Success";
    	}
    }
    ?>

    18'inci satırdan sonra echo $query; kullanın ve haber ekleyin. echo edilen insert sorgusunu phpmyadmin ile gönderip sorgunuzu test edin. insert'iniz herhangi bir koşula bağlı değil yani her durumda eklenmesi gerek. muhtemelen sql tarafında bir sorun var. kontrolü yapın zaten çözüme ulaşacaksınız.

    edit : insertiniz if(isset($_FILES['files'])){ şuna bağlı. gözat düğmenizin adının files olup olmadığını kontrol edin. if'e bile girmiyor olabilirsiniz.