stdmax.com STUDIO MAX
скрипты главная | скрипты | сайты | графика | wap, pda-сайты | баннеры | контакты | ссылки | карта сайта

Скрипты

Автор: М. Мазурин
Использовать скрипты разрешаю :)
Вопросы, предложения?

PHP

» Вычисление диапазонов из произвольного списка дат
» Пробежаться по всем дням и часам недели
» Печатаем строчки :)
» Карточная страница
» Простейший RDF XML парсер
» PHP Uploader

HTML

» Контролируем favicon.ico

PHP Uploader

Простейший аплоадер. Удобен тем, что можно настраивать различные тайм-ауты коннекта и чтения, можно подставлять хедеры. При незначитальной доработке можно запоминать COOKIEs и использовать для страниц, требующих авторизацию :)


<?php

// $u - url
function uploader($u)
{
$m = array
(
'host' => false,
'port' => 80,
'path' => '/',
'query' => '',
);
if (
false === ($u parse_url($u))
|| 
!= count(array_keys($u+= $mfalse)))
{
return 
false;
}
$s 'GET ';
$s.= == strlen($u['path']) ? '/' $u['path'];
$s.= == strlen($u['query']) ? '' '?'.$u['query'];
$s.= ' HTTP/1.0'."\r\n";
$s.= 'Host: '.$u['host']."\r\n";
$s.= 'Accept: text/html, */*'."\r\n";
$s.= 'User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1)'."\r\n";
$s.= 'Content-Type: text/plain; charset=windows-1252'."\r\n";
$s.= 'Connection: close'."\r\n";
$s.= "\r\n";
if (
false === ($h = @fsockopen($u['host'], $u['port'], $n$e60)))
{
return 
false;
}
elseif (
false === @stream_set_timeout($h60)
|| 
false === @fputs($h$s)
|| 
false === ($s = @fgets($h128))
|| 
!= count($s explode(' '$s3))
|| 
'200' !== $s[1])
{
fclose($h);
return 
false;
}
$r = array
(
0 => array(),
1 => '',
);
while (
!= strlen($s trim(fgets($h1024))))
{
$s explode(':'$s2);
$r[0][$s[0]] = trim($s[1]);
}
while (!
feof($h))
{
$r[1].= fread($h4096);
}
fclose($h);
return 
$r;
}

print_r(uploader('http://stdmax.com/'));

?>
Rambler's Top100 службы мониторинга серверов Megastock Яндекс цитирования
2010, STUDIO MAX (vipset)
сайты, баннеры и программы для интернета
Россия, г. Новосибирск | контакты