Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 31.10.2006, 22:40
Random Tech вне форума Посмотреть профиль Отправить личное сообщение для Random Tech Найти все сообщения от Random Tech
  № 1  
Ответить с цитированием
Random Tech

Регистрация: Oct 2006
Сообщений: 3
По умолчанию Проблема с XMLSocket

Я использую сервер на php из книги Гурского:
PHP код:
<?php
// Разрешаем скрипту выполняться неограниченно долго
// (сервер - это программа-демон, работаяющая в бесконечном цикле)
set_time_limit(0);
// Записываем в переменную IP-номер домена, на которои располагамется скрипт
$address=gethostbyname($_SERVER['SERVER_NAME']);
$port=10000//Записываем номер порта, отведенного под сокет-сервер
// Инициализируем новый сокет
$sock=socket_create(AF_INET,SOCK__STRSAM,0);
// Связываем сокет с IP и портом
socket_bind($sock,$address,$port);
// Включаем сокет-сервер в режим прослушивания вызовов от сокетов-клиентов
socket_listen($sock,5);
// Запускаем бесконечный цикл, в котором проверяем, не присоединился ли к сокету-серверу клиент
while(1)
{
    
$acc=socket_accept($sock);
    
// Если соединения нет, то сразу переходим к следующей итерации
    
if(!$acc) continue 1;
    
// Если клиент  присоединился, то запускаем цикл, в котором считываем поступающие от него данные,
    // и записываем их в строку $buf
    
$buf='';
    while(
1)
    {
        
$buf.=socket_read($acc,2045); // Считываем доступные данные
        // Если от клиента поступает команда close, то отключаем соединение
        
if($buf=='close\0')
        {
            
socket_close($acc);
            break 
2;
        }

        
// Если от клиента поступает команда quit, то останавливаем работу сервера
        
if($buf=='quit\0')
        {
            break 
1;
        }

        
// Если новую партию считанного текста завершает нулевой байт, значит сообщение закончено.
        // Его нужно переслать назад клиенту, и начать цикл сначала.
        
if(substr($buf,strlen($buf)-1,1)=='\0')
        {
            
socket_write($acc,$buf);
            
$buf='';
        }
    }
}

?>
И есть клиент на actionscript:
Код:
var socket:XMLSocket = new XMLSocket();
if(!socket.connect("localhost",10000))
{
	trace("Не удалось отправить запрос");
}

socket.onConnect=function(success:Boolean):Void
{
	if(!success)	
	{
		trace("Не удалось установить соединение");
	}
	else
	{
		trace("Соединение успешно установлено");
	}
}
При попытке соединиться с сервером мне выдаётся "Не удалось установить соединение". Пробовал запускать swf прямо из флэша, и из браузера, писал в connecte "localhost", "127.0.0.1", "http://localhost", "http://localhost/sever.php", что только не писал) Всё равно не соединяется.

Причём фаерволл точно не блочит эти запросы. Порт стоит правильный. Да и что самое интересное, видно, что socket.connect срабатывает, а вот socket.onConnect уже нет
Подскажите что-нибудь)

Старый 31.10.2006, 23:45
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,884
Записей в блоге: 7
http://www.flasher.ru/forum/showthread.php?t=87003
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 01.11.2006, 03:37
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 3  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
попробуй другой порт указать
например 1025, вместо 10000 (у меня, так заработало)

Старый 01.11.2006, 18:38
Random Tech вне форума Посмотреть профиль Отправить личное сообщение для Random Tech Найти все сообщения от Random Tech
  № 4  
Ответить с цитированием
Random Tech

Регистрация: Oct 2006
Сообщений: 3
udaaff, у меня ничего не изменилось =(
iNils, там совсем не то

Старый 01.11.2006, 22:05
Random Tech вне форума Посмотреть профиль Отправить личное сообщение для Random Tech Найти все сообщения от Random Tech
  № 5  
Ответить с цитированием
Random Tech

Регистрация: Oct 2006
Сообщений: 3
Проблему решил, оказалось просто в pdfe был плохо напечатан скрипт пхп-сервера, и я переписал с ошибками, должно быть
PHP код:
$sock=socket_create(AF_INET,SOCK_STREAM,0); 
Но этот сервер через некоторое время своей работы загружает процессор на 100% и больше не отвечает флэшу. Так и должно быть?)

Старый 02.11.2006, 01:52
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 6  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
Ага
Я когда-то ковырялся с подобным. Запустить без тормозов получилось с командной строки, что-то вроде «php -d server.php», точно не помню. Но разбираться дальше мне уже было лень

Старый 15.11.2006, 01:28
Chas вне форума Посмотреть профиль Отправить личное сообщение для Chas Посетить домашнюю страницу Chas Найти все сообщения от Chas
  № 7  
Ответить с цитированием
Chas
 
Аватар для Chas

Регистрация: Sep 2002
Адрес: simferopol
Сообщений: 981
Отправить сообщение для Chas с помощью ICQ
в скрипте бесконечный цикл, который загружает процессор.
просто добавь небольшую паузу.
гм... команда delay (...) или что-то в єтом роде, помницца
__________________
~
Never trouble trouble till trouble troubles you!

Создать новую тему Ответ Часовой пояс GMT +4, время: 08:38.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 08:38.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.