Potreboval by som pomôcť so scriptom na overovanie domén.
Stiahol som script (max´sWhios) a po nejakých úpravách to už mám skoro hotové: http://web.php5.sk/overDomenu.php
Problém je s funkciou strpos(), ktorá v tom scripte hĺadá v odpovedi reťazec, podľa ktorého určí, či je doména obsadená alebo nie.
Pri testovaní som narazil na to, že eu domény(ktoré neexistujú) nedokáže zachytiť.
V tom linku sa vypisuje aj odpoveď, aj hodnoty, ktoré vracia strpos(). To dúfam pochopíte... Pri eu sa hľadá reťazec "Status: AVAILABLE" (na konci odpovede). Ale strpos ho nevidí. Napadá ma, že odpoveď prichádza v inom kódovaní, ale to zase nechápem, ako to môže ostatným fungovať.?. Pozeral som aj iné podobné scripty, ale nikde sa kódovanie nerieši...
Má niekto tušenie v čom to môže byť?
funkcia:
Kód: Vybrať všetko
private function checkDomain($domain,$server,$findText){
$con = fsockopen($server, 43);
if (!$con) return false;
// Send the requested doman name
fputs($con, $domain."\r\n");
// Read and store the server response
$response = ' :';
while(!feof($con)) {
$response .= fgets($con,128);
}
// Close the connection
fclose($con);
$response.='-end';
echo '<div style="padding:15px">$response:<br>'.$response.'</div>';
echo '<div style="padding:15px">strpos($response,"%") == '.strpos($response, '%').'</div>';
echo '<div style="padding:15px">strpos($response, "'.$findText.'") == '.strpos($response, $findText).'</div>';
// Check the response stream whether the domain is available
if (strpos($response, $findText)){
return true;
}
else {
return false;
}
}