FAQ

Stepan Ilyin aka Step

Xakep, номер #054, стр. 054-102-3


if (!$urlArray[port]) $urlArray[port] = '80';

if (!$urlArray[path]) $urlArray[path] = '/';

$sock = fsockopen($urlArray[host], $urlArray[port], &$errnum,

&$errstr);

if (!$sock) $res = 'DNS';

else {

$dump .= "GET $urlArray[path] HTTP/1.1\r\n";

$dump .= "Host: $urlArray[host]\r\nConnection: close\r\n";

$dump .= "Connection: close\r\n";

fputs($sock, $dump);

while ($str = fgets($sock, 1024)) {

if (eregi("^http/[0-9]+.[0-9]+ ([0-9]{3}) [a-z ]*", $str))

$res[code] = trim(eregi_replace(

'^http/[0-9]+.[0-9]+([0-9]{3})[a-z ]*',

"\\1", $str));

if (eregi("^Content-Type: ", $str))

$res[contentType] = trim(eregi_replace(

"^Content-Type: ", "", $str));

}

fclose($sock);

flush();

return $res[code];

}

} else $res = "N/A";

return $res;

}

?>

Q: А каким образом на perl’е можно проверить правильность e-mail адреса?

A: На мой взгляд, рациональнее всего это можно сделать так:

if (!preg_match("/^(.+)@[a-zA-Z0-9-]+\.[a-zA-Z0-9.-]+$/si", $email)) {

echo "ОШИБКА! HЕВЕРHЫЙ E-MAIL!!!";

}

Q: У меня уже давно есть сайт, движок которого полностью написан мною на PHP... Ссылки выглядят так: www.muziki.net/mp3/rusian.php?page=1. Спрашивается: как сделать так, чтобы эта же ссылка выглядела так: www.muziki.net/mp3/1? Помню, что это можно сделать автоматически, используя настройки сервера, но никак не могу вспомнить как...

A: Делается это элементарно. Открой на сервере .htaccess и добавь следующее:

RewriteEngine On

RewriteRule ^mp3(\d*) /mp3/russian.php?page=($1)

Q: Спасибо вам за ответы по PHP. Они здорово помогают. Я пишу веб-сервер обмена файлами, и у меня появился такой вопрос: как можно составить список всех файлов в директории и записать их в массив?

A: Например, так:

if ($handle = opendir('.'))

{

while (false !== ($file = readdir($handle)))

{

if (is_dir($file)) continue;

$f_arr[] = $file;

}

closedir($handle);

print_r($f_arr);

}

else print 'error';

?>

Q: Так получилось, что у меня нет полноценного доступа к интернету. Зато в пользовании e-mail’ом я не ограничен, поэтому постоянно пользуюсь услугами сервисов, которые присылают ввв-странички мне в ящик. Но каждый раз писать запросы вручную откровенно парит, может быть, подскажешь софт для автоматизации этой рутинной работы?

A: Когда-то тоже сталкивался с такой проблемой. К счастью, это в прошлом. Тем не менее, держи ссылки на подходящий софт:

SuperMail 1.6 (259kb, FreeWare), http://mailweb.r2.ru/click/count.php?go=5

Qbem 2.0 (429kb, FreeWare), http://www.dxfania.boom.ru

Power2Mail v 3.03 (557Kb, ShareWare), http://power2mail.narod.ru

iSnoobyFileByEMail (133Kb, ShareWare), www.filebyemail.narod.ru

FileByEmail 1.0 (327Kb, ShareWare), ftp.mgul.ac.ru/pub/Win/Network/Internet/filebyemail_ver1_0_setup.exe

Q: Привет! Я собрался покупать модем, ищу что-нибудь недорогое, но в то же время качественное. Что можешь сказать по поводу модемов Acorp?

Назад на стр. 054-102-2  Содержание  Вперед на стр. 054-102-4