• 12-03-2017, 21:55:50
    #1
    Merhaba Arkadaşlar

    Php'de bir adet bot yaptım imdb'den json formatında verileri çekerek parse edip veritabanına kaydediyorum. Fakat bu işlemi yapabilmem için string içerisinde gerekli alana manuel olarak url girmem gerekiyor. Bunu otomatize edebilmek için verileri çekeceğim url'lere ait değerleri içeren bir adet veritabanı oluşturdum.
    Veritabanın'dan verileri çekip sıralı bir şekilde ilgili alana ekleyip bir sonraki url'e geçmesini istiyorum bunun için for,while gibi döngüleri farklı şekillerde kod içerisine ekleyip çalıştırmayı denedim fakat sıralı artırma işlemini yapamadım.

    Değerleri içeren veritabanı tablosu :

    Alıntı
    Sııralı artıcak şekilde her değer'e id atadım.

    Kod'un ilgili alanından bir kesit :

    <?php
    echo "<meta http-equiv='refresh' content='3'>"; 
    include('db.php');
    $urllist=mysql_query("SELECT ttlist FROM ttlist WHERE id =1");
    
        $json = file_get_contents("http://www.imdbjsonsitesi.com/?i=$urllist");
    	$data = json_decode($json);
    Tam Url Örnek :

    http://www.imdbornekurl.com/?i=tt0000001
    http://www.imdbornekurl.com/?i=tt0000002
    http://www.imdbornekurl.com/?i=tt0000003


    Yapmak istediğim şey

    - Yukarıdaki şekilde ?i parametresi içerisine veritabanındaki değerleri yazdırıcak ardından id'yi +1 artırıp bir sonraki id'deki değeri ?i içerisine yazıdırıcak bu döngüyü en son id'ye kadar yapmasını istiyorum toplamda 200 bin id var.Bot'un bu şekilde çalışmasını nasıl sağlayabilirim ?

    Yardımcı olacak arkadaşlara şimdiden TEŞEKKÜRLER,
    İyi Forumlar.
  • 12-03-2017, 22:33:08
    #2
    Üyeliği durduruldu
    <?php
    include('db.php');
    if(@$_GET["id"]=="")
    {
    	$id = 1;
    }
    else
    {
    	$id=$_GET["id"];
    }
    $urllist=mysql_query("SELECT ttlist FROM ttlist WHERE id =".$id."");
    
        $json = file_get_contents("http://www.imdbjsonsitesi.com/?i=$urllist");
    	$data = json_decode($json);
    	$sonrakid = $id+1;
    	echo "<meta http-equiv='refresh' content='3; url=index.php?id=".$sonrakid."'>"; 
    ?>
  • 12-03-2017, 23:11:49
    #3
    Rise adlı üyeden alıntı: mesajı görüntüle
    <?php
    include('db.php');
    if(@$_GET["id"]=="")
    {
    	$id = 1;
    }
    else
    {
    	$id=$_GET["id"];
    }
    $urllist=mysql_query("SELECT ttlist FROM ttlist WHERE id =".$id."");
    
        $json = file_get_contents("http://www.imdbjsonsitesi.com/?i=$urllist");
    	$data = json_decode($json);
    	$sonrakid = $id+1;
    	echo "<meta http-equiv='refresh' content='3; url=index.php?id=".$sonrakid."'>"; 
    ?>
    Cevap için çok teşekkür ediyorum.

    Sıralı artma olayı oldu fakat bu seferde db'ye boş kayıt ekliyor. Nedense verileri çekip parse edemiyor. Eğer sorun olmazsa bu konuda'da yardımcı olabilirmisiniz ?
  • 12-03-2017, 23:20:22
    #4
    Üyeliği durduruldu
    Kodlarda veritabanına ekleme veya düzeltme işlemi yapan bir kod göremedim olayı daha detaylandırırsanız yardımcı olabiliriz.
  • 12-03-2017, 23:36:06
    #5
    Rise adlı üyeden alıntı: mesajı görüntüle
    Kodlarda veritabanına ekleme veya düzeltme işlemi yapan bir kod göremedim olayı daha detaylandırırsanız yardımcı olabiliriz.
    Kod'un büyük bir kısmı aşağıdadır. Bot hedef siteye gidip json verilerini parse edip ekrana yazdırmaktadır yazdırdığı bu değerleri'de aynı anda db'ye kaydetmektedir. Dilerseniz tam kod'u pm'den gönderebilirim

    <?php
    
    include('db.php');
    if(@$_GET["id"]=="")
    {
       $id = 1;
    }
    else
    {
       $id=$_GET["id"];
    }
    $urllist=mysql_query("SELECT ttlist FROM ttlist WHERE id =".$id."");
     
       $json = file_get_contents("http://www.ornekjson.com/?i=$urllist&plot=json");
       $data = json_decode($json);
       $sonrakid = $id+1;
       echo "<meta http-equiv='refresh' content='3; url=index.php?id=".$sonrakid."'>"; 
     
    	$baslik = $data->Title;
    	$yil = $data->Year;
    	$rating = $data->imdbRating;
    	
    	echo "Baslik Adi : $baslik <br>
    	Yıl : $yil <br>
    	Rating : $rating <br>
    
    	$sorgu=mysql_query("INSERT INTO imdb
    	(`baslik`, `yil`, `rating`)
    	
    	VALUES
    	
    	('$baslik', '$yil', '$rating');");
    	
    	
    	 if($sorgu){
        echo 'Kayıt Eklendi.';
    	
    }else{
    
        echo 'Kayıt Eklenemedi';
    	
    	}
    
    	
    ?>
  • 12-03-2017, 23:50:36
    #6
    Üyeliği durduruldu
    Belirttiniz kodda mysql kısmında echo kısmında hata vardı.

    include('db.php'); 
    if(@$_GET["id"]=="") 
    { 
       $id = 1; 
    } 
    else 
    { 
       $id=$_GET["id"]; 
    } 
    $urllist=mysql_fetch_array(mysql_query("SELECT ttlist FROM ttlist WHERE id =".$id."")); 
      $urllist = $urllist["ttlist"];
       $json = file_get_contents("http://www.ornekjson.com/?i=$urllist&plot=json"); 
       $data = json_decode($json); 
       $sonrakid = $id+1; 
       echo "<meta http-equiv='refresh' content='3; url=index.php?id=".$sonrakid."'>";  
      
        $baslik = $data->Title; 
        $yil = $data->Year; 
        $rating = $data->imdbRating; 
         
        echo "Baslik Adi : $baslik <br> 
        Yıl : $yil <br> 
        Rating : $rating <br> ";
    
        $sorgu=mysql_query("INSERT INTO imdb 
        (`baslik`, `yil`, `rating`) 
         
        VALUES 
         
        ('$baslik', '$yil', '$rating');"); 
         
         
         if($sorgu){ 
        echo 'Kayıt Eklendi.'; 
         
    }else{ 
    
        echo 'Kayıt Eklenemedi'; 
         
        }
  • 13-03-2017, 21:02:05
    #7
    Rise adlı üyeden alıntı: mesajı görüntüle
    Belirttiniz kodda mysql kısmında echo kısmında hata vardı.

    include('db.php'); 
    if(@$_GET["id"]=="") 
    { 
       $id = 1; 
    } 
    else 
    { 
       $id=$_GET["id"]; 
    } 
    $urllist=mysql_fetch_array(mysql_query("SELECT ttlist FROM ttlist WHERE id =".$id."")); 
      $urllist = $urllist["ttlist"];
       $json = file_get_contents("http://www.ornekjson.com/?i=$urllist&plot=json"); 
       $data = json_decode($json); 
       $sonrakid = $id+1; 
       echo "<meta http-equiv='refresh' content='3; url=index.php?id=".$sonrakid."'>";  
      
        $baslik = $data->Title; 
        $yil = $data->Year; 
        $rating = $data->imdbRating; 
         
        echo "Baslik Adi : $baslik <br> 
        Yıl : $yil <br> 
        Rating : $rating <br> ";
    
        $sorgu=mysql_query("INSERT INTO imdb 
        (`baslik`, `yil`, `rating`) 
         
        VALUES 
         
        ('$baslik', '$yil', '$rating');"); 
         
         
         if($sorgu){ 
        echo 'Kayıt Eklendi.'; 
         
    }else{ 
    
        echo 'Kayıt Eklenemedi'; 
         
        }
    Yardımlarınız için tekrar'dan teşekkür ediyorum. Sorunsuz bir şekilde çalışıyor. Bot