Witam,
Dostaje dane o nazwach postaci w tablicy superglobalnej GET np.
www.adres.pl/data.php?=Nick1||Nick2||nick3||nick4||nick5||nick6||nick7.....||Nick20
Następnie rozbijam te nicki explodem i chce foreachem pobrac wszystkie dane tych postaci za pomocą curla i zapisać do bazy, jednakże czasami zamiast zczytać jakąś wartość to przypisuje albo 0 , albo nic nie wstawia, gdy jest większa ilość postaci (choć tutaj tez nie ma reguły, czasami zdarza się , że nie zczyta nawet jak jest 5 nicków przesłanych GET'em do sprawdzenia).
Czy ktoś wie,co jest nie tak? Wstawiam poniżej funkcje curl'a odpowiadającą za pobieranie danych ze strony.
function getInfoCharacters($TibiaCharName)
{
$result = '0';
$c = curl_init();
curl_setopt($c, CURLOPT_URL, 'http://www.tibia.com/community/?subtopic=characters&name='.urlencode($TibiaCharName));
curl_setopt($c, CURLOPT_TIMEOUT, 15);
curl_setopt($c, CURLOPT_HEADER, 0);
curl_setopt($c, CURLOPT_RETURNTRANSFER, 1);
$htmlBuffer = curl_exec($c);
curl_close($c);
//level
$lvl = getStrBetween($htmlBuffer, '<td>Level:</td><td>','</td></tr>');
if (($lvl!='') and (strlen($lvl)<5))
$result_lvl = $lvl;
else
$lvl = getStrBetween($htmlBuffer, '<td>Level:</td><td>','</td></tr>');
//profession
$profession = getStrBetween($htmlBuffer, '<td>Vocation:</td><td>','</td></tr>');
if (($profession!='') and (strlen($profession)<30))
$result_profession = $profession;
else
$result_profession = getStrBetween($htmlBuffer, '<td>Vocation:</td><td>','</td></tr>');
//residence
$residence = getStrBetween($htmlBuffer, '<td>Residence:</td><td>','</td></tr>');
if (($residence!='') and (strlen($residence)<40))
$result_residence = $residence;
else
$result_residence = getStrBetween($htmlBuffer, '<td>Residence:</td><td>','</td></tr>');
//house
$house = getStrBetween($htmlBuffer, '<td>House:</td><td>',' is paid until');
if (($house!='') and (strlen($house)>3))
$result_house = $house;
$resultAll = $result_lvl . '|' . $result_profession . '|' . $result_residence . '|' . $result_house;
return $resultAll;
}