• 22-03-2020, 01:28:52
    #1
    Merhaba Arkadaşlar, Veriyi çekiyorum ama sorun yaşadığım nokta ise, tablo'daki td iler isimsiz o yüzden hepsini aynı çekiyor. örnek vermek gerekirse.
    Matematik kısmını çekiyorum, Hakan'ın notunu çekiyorum 80 olarak ama Ahmet'in kini çekemiyorum onunkini ve diğerlerinide 80 olarak çekiyor çünkü herhangi bir etiket yok <td> etiketinde
    diyelim buna bir çözüm bulduk, Matematik'ten sonra Fizik kısmını nasıl çekicem. ilk defa veri çekmeye çalışıyorum umarım anlatabilmişimdir.
  • 22-03-2020, 01:36:33
    #2
    Regex kullanımı biraz karışıktır. Bunun yerine simple_html_dom.php kullanın. Dokümantasyonu mevcut.
  • 22-03-2020, 01:40:07
    #3
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Hocam DOM nesneleri ile Javascript ile oynayıp istediğin çoğu şeyi yaparsın. Veri çekmeye çalışacaksan @TDBilisim 'in önerdiği kütüphaneyi kullanmalısın. Mantık olarak da <table> içerisindeki tüm <td> öğelerini getir, bir diziye at dizinin indisine göre veriyi ayrıştır/yaz vs. böylece ilerleyecektir. Kolay gelsin
  • 22-03-2020, 18:52:57
    #4
    TDBilisim adlı üyeden alıntı: mesajı görüntüle
    Regex kullanımı biraz karışıktır. Bunun yerine simple_html_dom.php kullanın. Dokümantasyonu mevcut.
    Yardımın için teşekkürler, ne var ne yok araştırdım, yabanci sitelerdende ama hep aynı anlatım basit şekliyle anlatmışlar..
  • 22-03-2020, 18:56:48
    #5
    Aspffice adlı üyeden alıntı: mesajı görüntüle
    Yardımın için teşekkürler, ne var ne yok araştırdım, yabanci sitelerdende ama hep aynı anlatım basit şekliyle anlatmışlar..
    Anlamadım. Bu kütüphane ile CSS selector gibi seçebiliyorsunuz. Örneğin CSS de
    body .ornekdiv img {
    }
    şeklinde bir tanım yaptığınız gibi bu kütüphane ile yapabilirsiniz.
    https://simplehtmldom.sourceforge.io/manual.htm
    Burada detaylı anlatımı mevcut.
  • 22-03-2020, 19:00:57
    #6
    Aspffice adlı üyeden alıntı: mesajı görüntüle
    Merhaba Arkadaşlar, Veriyi çekiyorum ama sorun yaşadığım nokta ise, tablo'daki td iler isimsiz o yüzden hepsini aynı çekiyor. örnek vermek gerekirse.
    Matematik kısmını çekiyorum, Hakan'ın notunu çekiyorum 80 olarak ama Ahmet'in kini çekemiyorum onunkini ve diğerlerinide 80 olarak çekiyor çünkü herhangi bir etiket yok <td> etiketinde
    diyelim buna bir çözüm bulduk, Matematik'ten sonra Fizik kısmını nasıl çekicem. ilk defa veri çekmeye çalışıyorum umarım anlatabilmişimdir.
    İstediğinizi yapmak aslında çok basit. Size basit bir mantık vereyim bunu uyarlamak size kalmış. Aşağıdaki kod content içerisine yazılmış olan bütün tdlerin verilerini dönecektir. Burada her satırdaki hücre sayısı belli yani 7 bu şu anlama geliyor. İlk gelen 7 veri ilk satır oluyor. Her satırın ilk veriside Ders verisi olduğundan 2. veriden sonra yı almaya çalışacaksınız. Üstteki tabloda 9. veri (hakan matematik), 16. veri ise (fizik hakan) gibi olmaktadır. Bu mantığı kendinize göre uyarlarsanız istediğinizi alabilirsiniz diye düşünüyorum.

    $content = '';

    preg_match('@<td>(.*?)</td>@si', $content, $output);

    echo '<pre>';
    print_r($output);
    echo '</pre>';