2013-05-13 2 views
0

После поиска некоторых скриптов Ruby я попытался написать на PHP с некоторой помощью скрипта. Моя проблема в том, что я не уверен, что объекты jSon верны, потому что я не знаю источник для этого сейчас.Проверка подлинности гарантии Apple

Мой вопрос, если я делаю что-то неправильно с jSon в PHP? Если нет, то Объекты Источников ошибочны.

<?php 

$sn = isset($_GET['sn']) ? $_GET['sn'] : ''; 

if($sn) 
{ 
    $url = 'https://selfsolve.apple.com/warrantyChecker.do?sn='.$sn . "&country=USA"; 

    $json = file_get_contents($url); 
    $json = substr($json, 5, -1); 
    $json_obj = json_decode($json); 

    if(isset($json_obj->ERROR_CODE)) 
    { 
     echo $json_obj->ERROR_DESC; 
    } 
    else 
    { 
     echo "$json_obj->PROD_DESCR <img src=\"$json_obj->PROD_IMAGE_URL\" alt=\"\"><br>"; 

     echo"Product Description: $json_obj->PROD_DESCR <br>"; 
     echo"Purchase date: $json_obj->PURCHASE_DATE <br>"; 
     echo"Warranty exp date: $json_obj->COVERAGE_DATE <br>"; 

    } 
} 
?> 

<form action="" method="get" accept-charset="utf-8"> 
    <p><input name="sn" value="<?=$sn?>"><input type="submit" value="Lookup serial"></p> 
</form> 

Другой способ, который я пытался сделать это

<?php 
$sn = $argv[1]; 
$data = json_decode(file_get_contents( 
     "https://selfsolve.apple.com/warrantyChecker.do?sn=". $sn . "&country=USA")); 
echo "Product Description" .$data->PROD_DESCR."\n"; 
echo "Coverage for " . $sn . " ends on " . $data->COVERAGE_DATE . "\n"; 
?> 
+0

«Я не знаю, источник для него сейчас.» что вы имеете в виду? – meda

+0

попробуйте получить ответ от целевого URL-адреса через curl .. и также использовать подстроку до использования json-декодирования. –

ответ

0
<?php 

$sn = isset($_GET['sn']) ? $_GET['sn'] : ''; 

if($sn) 
{ 
    $url = 'https://selfsolve.apple.com/warrantyChecker.do?sn='.$sn . "&country=USA"; 

    $json = file_get_contents($url); 

    //This line you are splitting the json form then it wont work 
    $json = substr($json, 5, -1); 

    $json_obj = json_decode($json); 

    if(isset($json_obj->ERROR_CODE)) 
    { 
     echo $json_obj->ERROR_DESC; 
    } 
    else 
    { 
     echo "$json_obj->PROD_DESCR <img src=\"$json_obj->PROD_IMAGE_URL\" alt=\"\"><br>"; 

     echo"Product Description: $json_obj->PROD_DESCR <br>"; 

     echo"Purchase date: $json_obj->PURCHASE_DATE <br>"; 

     echo"Warranty exp date: $json_obj->COVERAGE_DATE <br>"; 


    } 
} 
?> 
Смежные вопросы