Merhabalar. Bir projede kullanmak üzere Apple'ın "https://checkcoverage.apple.com/" adlı sitesi üzerinden php curl ile IMEI yada seri numarasını girerek ürünün garanti durumunu almak istiyorum. (Örnek IMEI: 359209071801769) Sitede captcha var, aşağıda bulunan kodlarda captchayı da kullanıcıya yazdırark geçmeye çalıştık, her şey tamam ama sağlıklı post edemedik. Captchayı geçebilirsek mükemmel olur ama geçemesek de çok sorun değil. Forumdan @ReQueM arkadaşımız sağolsun uğraştı ama post olayını halledemedik. Kodlar aşağıdaki gibidir, bir bakabilir misiniz?


<?php
    $cookie = "cookie.txt";

    if(!$_POST){
    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, "https://checkcoverage.apple.com/gc?t=image&timestamp=".round((microtime(true) * 1000) - (60*60*3/1000)));
    curl_setopt($curl, CURLOPT_REFERER, "https://checkcoverage.apple.com/tr/tr/"); 
    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]); 
    curl_setopt($curl, CURLOPT_ENCODING, "gzip");
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); 
    curl_setopt($curl, CURLOPT_VERBOSE, true); 
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,0); 
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,0);
    curl_setopt($curl, CURLOPT_COOKIEFILE, $cookie);
    curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie);
    $gv = curl_exec($curl);

    $sadf = json_decode($gv, true);

    echo '<form action="" method="post">';
    echo '<img src="data:image/jpeg;base64,'.$sadf["binaryValue"].'" /><br />';
    echo 'Type Captcha Code <input type="text" name="captcha" /><br />';
    echo 'Type IMEI<input type="text" name="imei" /><br />';
    echo '<input type="submit" value="Run" />';
    echo '</form>';
    curl_close($curl);
    }else{
    $imei = $_POST["imei"];
    $captcha = $_POST["captcha"];

    $curl = curl_init(); 
    curl_setopt($curl, CURLOPT_URL, "https://checkcoverage.apple.com/tr/tr/");
    curl_setopt($curl, CURLOPT_REFERER, "https://checkcoverage.apple.com/tr/tr/"); 
    curl_setopt($curl, CURLOPT_USERAGENT, $_SERVER["HTTP_USER_AGENT"]); 
    curl_setopt($curl, CURLOPT_ENCODING, "gzip");
    curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET');
    curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true); 
    curl_setopt($curl, CURLOPT_POST, true); 
    curl_setopt($curl, CURLOPT_VERBOSE, true); 
    curl_setopt($curl, CURLOPT_SSL_VERIFYHOST,0); 
    curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,0);
    curl_setopt($curl, CURLOPT_COOKIEFILE, $cookie);
    curl_setopt($curl, CURLOPT_COOKIEJAR, $cookie);
    preg_match('#csrfToken\: "(.*?)"#si', curl_exec($curl), $token);
    $post = "sno=$imei&ans=$captcha&captchaMode=image&CSRFToken=".$token[1]; 
    curl_setopt($curl, CURLOPT_POSTFIELDS, $post);
    $content = preg_replace("/<head.*>/i", "<head><base href='https://checkcoverage.apple.com/' />", curl_exec($curl), 1);

    if(curl_exec($curl) === false){ 
    echo 'Curl error: ' . curl_error($curl); 
    }else{ 

    echo $content;
    } 
    curl_close($curl);
    }
    ?>