Arama butonu
Bu konudaki kullanıcılar: 1 misafir
1
Cevap
746
Tıklama
0
Öne Çıkarma
preg_match_all ile alınan veriyi mysql'e insert etmek
Y
8 yıl (32 mesaj)
Onbaşı
Konu Sahibi

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));
}





Y
8 yıl (32 mesaj)
Onbaşı
Konu Sahibi

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;



DH Mobil uygulaması ile devam edin. Mobil tarayıcınız ile mümkün olanların yanı sıra, birçok yeni ve faydalı özelliğe erişin. Gizle ve güncelleme çıkana kadar tekrar gösterme.