Şimdi Ara

preg_match_all ile alınan veriyi mysql'e insert etmek

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
4
Cevap
0
Favori
605
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • preg_match_all ile istediğim kısımları alıyor echo ile yazdırınca doğru bir şekilde 25 kaydı alt alta yazıyor. Buraya kadar sorun yok. Ama bu 25 kaydı veritabanına insert etmek istiyorum. Olmuyor.



    // Data Parse
    preg_match_all('@<div class="photo-box photo-box--interactive" data-photo-id=(.*?)>@si',$site,$mydata);
    for ($a=0; $a<count($mydata[1]); $a++){
    echo $mydata[1][$a].'<br>';

    $value = mysqli_real_escape_string($link, $mydata[1][$a]);
    mysqli_query($link,"INSERT INTO image_list (image_id)
    VALUES ('".$value."')")
    or die(mysqli_error($link));
    }





  • Aşağıdaki kod ile çözdüm. İşinize yarayabilir.


    ...
    //VERİ TABANI BAĞLANTISI YAPMALISINIZ

    function siteConnect($site)
    { global $conn;
    $ch = curl_init();
    $hc = "YahooSeeker-Testing/v3.9 (compatible; Mozilla 4.0; MSIE 5.5; Yahoo! Search - Web Search)";
    curl_setopt($ch, CURLOPT_REFERER, 'http://www.google.com');
    curl_setopt($ch, CURLOPT_URL, $site);
    curl_setopt($ch, CURLOPT_USERAGENT, $hc);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    $site = curl_exec($ch);
    curl_close($ch);

    // Data Parse
    preg_match_all('@<div class="photo-box photo-box--interactive" data-photo-id=(.*?)>@si',$site,$mydata);

    for ($a=0; $a<count($mydata[1]); $a++){
    $value = mysqli_real_escape_string($conn, $mydata[1][$a]);
    mysqli_query($conn,"INSERT INTO tablom (business_id, businesname, yelp, image_id)
    VALUES ('1', '12', '123', '".$value."')")
    or die(mysqli_error($conn));

    }
    }
    $getSite = siteConnect('https://example.com/example.html');
    echo $getSite;




  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.