Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

сокеты

6.7K
12 сентября 2007 года
svd
31 / / 17.12.2005
Доброго времени суток.
Проблема: код в первом файле:
$port = 80;
$servName = "localhost";
$arr = array();
$arr[] = 0;
$arr[] = 7;
$arr[] = 6;
$arr[] = 5;
$arr[] = 4;

$i = 0;
do {
$sock = fsockopen($servName,$port);
fwrite($sock,$arr[$i]);
$i++;
fclose($sock);
sleep(1);
}
while($i < count($arr));

Код во втором файле:

$sock = fsockopen("GPS",80);
$r = "";
while(true)
{
$r .= fread($sock,128);
}
fclose($sock);
echo $r;

Первый файл исполняеться, но во втором - валиться ошибка, мол время исполнения истекло. Я понимаю что проблема не связана с этой ошибкой, эта ошибка закономерно появляеться.
Проблема в том что я не правильно принимаю данные во втором файле.

Первый файл находиться в каталоге GPS/www
Второй файл находиться в каталоге localhost/www

Задача: Необходимо через сокеты переслать данные из первого файла во второй.
Цель: написать эмулятор GPS трекера TR-102.

Может кто сталкивался с подобными задачами?

Если возможно дайте линки на соответствующие ресурсы, где хоть немного дан мануал по написанию подобных вещей (не просто статьи про то как юзать сокеты).
7.8K
12 сентября 2007 года
Tingo
201 / / 17.05.2007
!) PHP код в BB-теги [PHP] [/PHP], остальной в [CODE] [/CODE]
!) Нужно приводить ошибку. (или же подключать телепатов)

Предполагаю, что ошибка в превышении ограничения по времени( Time Limit Exceed или что-то в этом роде).

Заметки по второму файлу:
1)Он никогда не выходит из цикла, по этой причине ничего не выводит.
участок кода
---fclose($sock);
---echo $r;
не исполняется.
2) Повторяется "без передышки"
{
$r .= fread($sock,128);
}
sleep на пару секунд добавить что-ли?
355
13 сентября 2007 года
&lt;SCORP&gt;
786 / / 21.10.2006
твой "второй файл" является сетевым сервером. одновременно он является скриптом, который выполняется веб-сервером. а проблема в том, что он не должен выполняться под веб сервером, т.к. версия php предназначеная для web ограничивает время выполнения скрипта (по умолчанию 30 секунд). т.е. тебе твой сетевой сервер надо запустить напрямую скормив исходник интерпретатору php, и не через браузер
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог