• 14-02-2010, 22:03:13
    #1
    Arkadaşlar içeriği toplu olarak mysqle eklemek istiyorum ancak eklemeden önce mysqlde olup olmadığını kontrol etmek istiyorum. Tek tek eklediğimde mysql_num_rows çalışıyor ve tek olan başlığı kontrol ediyor ancak 10-15 içerik oldu mu mysql?num_rowsun olduğu satırda böyle bir hata veriyor:
    Alıntı
    Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\****\****\******\index.php on line 66
    Neden olabilir acaba?
  • 14-02-2010, 22:05:09
    #2
    kullandığınız kodu yazma imkanınız var mı
  • 14-02-2010, 22:23:18
    #3
    Elbette. For döngüm şu şekilde:
    for ($i=0; $i<count($al[1]); $i++){
    $baslik = $al[2][$i];
    $kv = mysql_query("select * from wp_posts where post_title='$baslik'");
    $sv= mysql_num_rows($kv);
    if($sv==0){  
    $link = "http:/********".$al[1][$i];
    $sonlar ='|<p  class="txt" id="font_text">(.*?)</p>|si';
    $sonlar2 = '|<p class="byline2">(.*?)</p>|si';
    $sonlar3 = '|<p class=\'pB5\'><img src=\'(.*?)\' alt="(.*?)" width="290" border=\'0\' class=\'imgbor\' title="(.*?)" /></p>|si';
    preg_match($sonlar, baglan($link), $haber);
    preg_match($sonlar2, baglan($link), $haber2); 
    preg_match($sonlar3, baglan($link), $haber3); 
        
    $domates = $haber2[1].$haber[1];
    $yes = trim(strip_tags($domates));
    $baslikci = iconv("iso-8859-9", "utf-8", $baslik);
    $kategori = iconv("iso-8859-9", "utf-8", "malatyaspor");
    $etiket =   $baslikci." haberi, ".$baslikci.", ".$baslikci." oku"; 
    $icerikci = iconv("iso-8859-9", "utf-8", $yes);
    $resim = "******".$haber3[1];  
    
             $k_sql=mysql_fetch_array(mysql_query("Select * from wp_terms where slug='$kategori'"));
    $kid=$k_sql[term_id];
    $my_post = array(); $my_post['post_title'] = "$baslikci"; $my_post['post_content'] = "$icerikci"; $my_post['post_status'] = 'publish'; $my_post['post_author'] = 1; $my_post['post_category'] = array("$kid"); $my_post['tags_input'] = "$etiket"; wp_insert_post( $my_post );
    $sonuc = @mysql_query("select ID from wp_posts order by ID desc");
    list($id) = @mysql_fetch_row($sonuc);
    $ozekle = mysql_query("Insert Into wp_postmeta (meta_id,post_id,meta_key,meta_value) values ('$tagid','$id','thumb','$resim')");
    }
    
    }
  • 14-02-2010, 22:32:21
    #4
    $kv = mysql_query("select * from wp_posts where post_title='$baslik'");
    $sv= mysql_num_rows($kv);
    bu iki satırı aşağıdaki satırla değiştirip dener misiniz bi

    $sv = mysql_num_rows(mysql_query("select * from wp_posts where post_title='$baslik'"));
  • 14-02-2010, 22:33:55
    #5
    Invictus adlı üyeden alıntı: mesajı görüntüle
    $kv = mysql_query("select * from wp_posts where post_title='$baslik'");
    $sv= mysql_num_rows($kv);
    bu iki satırı aşağıdaki satırla değiştirip dener misiniz bi

    $sv = mysql_num_rows(mysql_query("select * from wp_posts where post_title='$baslik'"));
    Hocam o konuda denemediğim şey kalmadı. Onunla maalesef bir alakası yok.
  • 14-02-2010, 22:45:30
    #6
    o zaman $sv= mysql_num_rows($kv); satırından sonra mysql_free_resut($kv) deneyin bir de
  • 14-02-2010, 22:52:08
    #7
    Invictus adlı üyeden alıntı: mesajı görüntüle
    o zaman $sv= mysql_num_rows($kv); satırından sonra mysql_free_resut($kv) deneyin bir de
    Hocam sanırım l'yi unutmuşsunuz. mysql_free_result olayını da denedim bu sefer o da boolean given hatası verdi.
  • 14-02-2010, 23:02:11
    #8
    function eklenmis($baslik) {
    	$kontrol = mysql_query("SELECT * FROM wp_posts WHERE post_title='$baslik'");
    	if(mysql_num_rows($kontrol) > 0) { return true; }
    	else { return false; }
    }
    
    for ($i=0; $i<count($al[1]); $i++){
    $baslik = $al[2][$i];
    if(eklenmis($baslik) == false){  
    $link = "http:/********".$al[1][$i];
    $sonlar ='|<p  class="txt" id="font_text">(.*?)</p>|si';
    $sonlar2 = '|<p class="byline2">(.*?)</p>|si';
    $sonlar3 = '|<p class=\'pB5\'><img src=\'(.*?)\' alt="(.*?)" width="290" border=\'0\' class=\'imgbor\' title="(.*?)" /></p>|si';
    preg_match($sonlar, baglan($link), $haber);
    preg_match($sonlar2, baglan($link), $haber2); 
    preg_match($sonlar3, baglan($link), $haber3); 
        
    $domates = $haber2[1].$haber[1];
    $yes = trim(strip_tags($domates));
    $baslikci = iconv("iso-8859-9", "utf-8", $baslik);
    $kategori = iconv("iso-8859-9", "utf-8", "malatyaspor");
    $etiket =   $baslikci." haberi, ".$baslikci.", ".$baslikci." oku"; 
    $icerikci = iconv("iso-8859-9", "utf-8", $yes);
    $resim = "******".$haber3[1];  
    
             $k_sql=mysql_fetch_array(mysql_query("Select * from wp_terms where slug='$kategori'"));
    $kid=$k_sql[term_id];
    $my_post = array(); $my_post['post_title'] = "$baslikci"; $my_post['post_content'] = "$icerikci"; $my_post['post_status'] = 'publish'; $my_post['post_author'] = 1; $my_post['post_category'] = array("$kid"); $my_post['tags_input'] = "$etiket"; wp_insert_post( $my_post );
    $sonuc = @mysql_query("select ID from wp_posts order by ID desc");
    list($id) = @mysql_fetch_row($sonuc);
    $ozekle = mysql_query("Insert Into wp_postmeta (meta_id,post_id,meta_key,meta_value) values ('$tagid','$id','thumb','$resim')");
    }
    
    }
    bu şekilde kullansanız olur mu ki
  • 14-02-2010, 23:05:08
    #9
    Sanırım olmaz ama bir deneyelim ne kaybederiz.
    Evet tahmin ettiğim gibi yine hata verdi.