Şimdi Ara

ACİLL YARDIM LÜTFEN Çözümü BULAMADIM!?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir (1 Mobil) - 1 Masaüstü1 Mobil
5 sn
5
Cevap
0
Favori
262
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • şimdiden herkeze çok teşekkür ederim.

    Arkadaşlar şimdi sorunum ben bir siteden veri çekiyorum nick çok düzgün şekilde sıralanıyor görselde gördüğünüz gibi ama score ve frag 1 kere sıralanıp bitiyor.

    Sitemin görüntüsü ve kaynak kodları:
     ACİLL YARDIM LÜTFEN Çözümü BULAMADIM!?

    Veri çektiğim sitenin görüntüsü ve kaynak kodları:
     ACİLL YARDIM LÜTFEN Çözümü BULAMADIM!?

    arkadaşlar bu 2.inci konum oldu lütfen yardım edin.







  • Şimdi buna bir açıklama getirelim. kaynak kodlarının tamamı yok ancak anladığım kadarı ile curl ile bağlantı sağlayıp çekiyorsun.
    Getir adında preg_match_all(' fonksiyonu yazılmış kısa yol olarak oluşturulmuş. Buraya kadar her şey normal.

    Bu tarz olaylarda deneme yanılma yaparak sonuca ulaşılabilir.



    function Baglan($url){
    $curl = curl_init();
    curl_setopt($curl, CURLOPT_URL, $url);
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]);
    $cikti = curl_exec($curl);
    curl_close($curl);
    return str_replace(array("\n", "\t", "\r"), null, $cikti);

    }




    $site = "http://www.siteadresi.com/deneme.html";
    $baglan = Baglan($site);

    preg_match_all('#<tr style=background ...... 2><td>(.*?)</td><td>(.*?)</td><td>(.*?)</td><td>#', $baglan , $record);

    Buradaki mantık şudur sizin yaptığınız gibi $frag değişkeninde önceki nick değişkenini uygulayıp ona göre de veri çekmeye çalışıyorsunuz ancak bu yanlış yöntem bu yöntem bir kod içerisinde birden fazla yer belirlereyerek alabiliyorsunuz.

    bu kodu ise şu şekilde kullanacaksın.

    $nick = $record[1];
    $frag = $record[2];
    $score = $record[3];


    Artık bundan sonrası da listelemekte

    Test içinde prtint ya da echo kullan. dene çalışıyormu diye

    Kolay gelsin.




  • usta bu hatayı verdi

    Warning: preg_match_all(): Unknown modifier '4' in /home/csyildiz/public_html/cs1.csyildizi.com.php on line 69
  • 0ktaycsy 0 kullanıcısına yanıt
    Kodlarda değişiklik yaparak uyguladım test ortamında da denedim.

    www.bayiden.com.tr/test.html kaynak dosya yani veri çekeceğimiz yer
    www.biotechbil.com/test/test.php bu da curl ile çektiğimiz php dosyamız.

    Denedim test ettim ve çalışıyor kendi sitene uygulaman zor olmayacaktır.



    Kaynak kod
     

    <?
    function login($url){
    $fp = fopen("cookie.txt", "w");
    fclose($fp);
    $login = curl_init();
    curl_setopt($login, CURLOPT_COOKIEJAR, "cookie.txt");
    curl_setopt($login, CURLOPT_COOKIEFILE, "cookie.txt");
    curl_setopt($login, CURLOPT_TIMEOUT, 40000);
    curl_setopt($login, CURLOPT_RETURNTRANSFER,1);
    curl_setopt($login, CURLOPT_URL, $url);
    curl_setopt($login, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($login, CURLOPT_POST,1);
    curl_setopt($login, CURLOPT_POSTFIELDS, $data);
    ob_start();
    $cikti = curl_exec($login);
    ob_end_clean();
    curl_close ($login);
    return str_replace(array("\n", "\t", "\r"), null, $cikti);
    }

    $site = "http://bayiden.com.tr/test.html";
    $baglan = login($site);
    preg_match_all('@<tr style=background-color:#e4eaf2><td> (.*?) </td><td> (.*?) </td><td> (.*?) </td>@', $baglan , $test);
    $nick = $test[1];
    $frag = $test[2];
    $sure = $test[3];

    ?>

    <br><br><br><br>




    <div style='height:10px'><br /></div>
    <div style='margin:auto; overflow:auto; text-align:center; padding:10px'>
    <table cellpadding='4' cellspacing='2' style='margin:auto'>
    <tr style='background-color:#f4f7fa'>
    <td> <b>Name</b> </td>
    <td> <b>Score</b> </td>
    <td> <b>Time</b> </td>
    </tr><div padding:14px>

    <?
    $sayi = count($nick);
    for($i=0;$i<$sayi;$i++){
    echo "<tr style=background-color:#e4eaf2><td>".$nick[$i]."</td><td>".$frag[$i]."</td><td>".$sure[$i]."</td></tr>";
    }
    ?>
    </table>
    </div>
    </div>
    <div style='height:10px'><br /></div>







  • Usta çok teşekkürler süpersin tüm hevesim kırılmıştı.
  • Yapay Zeka’dan İlgili Konular
    Yardım Lütfen
    18 yıl önce açıldı
    Lütfen yardım...
    3 ay önce açıldı
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.