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

Вернуться   Форум Flasher.ru > Flash > Серверные технологии и Flash

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 16.07.2005, 02:00
-MS- вне форума Посмотреть профиль Отправить личное сообщение для -MS- Найти все сообщения от -MS-
  № 1  
Ответить с цитированием
-MS-
 
Аватар для -MS-

Регистрация: Jun 2005
Сообщений: 367
По умолчанию опять сокеты, где не прав?

скрипт и флэшка в зипе... проблема такая, запускаем скрипт, запускаем флешку, отправляем первое сообщение, отправляется... отправляем второе сообщение, не приходит обратно... запускаем во второе окошко флешку, приходит сообщение из первого окна которое не отобразилось, отправляем сообщение,возвращается, а после этого все... тишина...
если лень архив качать, код тут
PHP код:
<?php

$address 
'127.0.0.1';
$port 5190;
$max_clients 100;

// массив клиентов
$client = Array();
//массив ожидания чтения из сокетов
$read=Array();

// создаем сокет
$sock socket_create(AF_INETSOCK_STREAM0);
// связываем имя с сокетом
socket_bind($sock$address$port) or die('Could not bind to address');
// прослушиваем соединения
socket_listen($sock);

//зацикливаем соединение
while (true) {
        
//принемаем соединения на сокете и пишем в массив ресурсы
        
for ($i 0$i $max_clients$i++){
                if ((!isset(
$client[$i]['sock']))||($client[$i]['sock'] == null)){
                        
$client[$i]['sock'] = socket_accept($sock);
                        break;
                }
        }
        
//ждем сообщения на сокетах
        
for($i=0;$i<$max_clients$i++){
                if((isset(
$client[$i]['sock']))&&($client[$i]['sock'] != null)){
                        if (
false === ($buf socket_read($client[$i]['sock'], 2048PHP_NORMAL_READ))) {
                                echo 
"socket_read() failed: reason: " socket_strerror($ret) . "\n";
                                break 
3;
                        }
                        
$buf=trim($buf);
                        if (
$buf == 'quit') {
                                
socket_close($client[$i]['sock']);
                                unset(
$client[$i]);
                        }
                        if (
$buf == 'shutdown') {
                                break 
2;
                        }
                        if(
$buf!=""){
                                
$talkback "[".date("h:m")."] $buf<br>".chr(0);
                                echo 
$talkback;
                                for(
$j=0;$j<$max_clients$j++){
                                        if((isset(
$client[$j]))&&($client[$j]['sock']  != null)){
                                                
$stat=socket_write($client[$j]['sock'], $talkbackstrlen($talkback));
                                                while(
$stat==false){
                                                        
socket_write($client[$j]['sock'], $talkbackstrlen($talkback));
                                                }
                                        }
                                }
                        }
                }
        }
}
//закрываем главный сокет
socket_close($sock);
?>
Вложения
Тип файла: zip www.zip (8.0 Кб, 100 просмотров)

Старый 19.07.2005, 00:07
maksim_surguy вне форума Посмотреть профиль Отправить личное сообщение для maksim_surguy Найти все сообщения от maksim_surguy
  № 2  
Ответить с цитированием
maksim_surguy

Регистрация: Jul 2005
Сообщений: 2
По умолчанию Flash + PHP + Sockets chat

Here is a full source(created by me) of simple Flash+PHP+Sockets chat. enjoy. And sorry, I don't have time to explain any line of code.
Вложения
Тип файла: zip chat.zip (20.7 Кб, 174 просмотров)

Старый 19.07.2005, 00:25
-MS- вне форума Посмотреть профиль Отправить личное сообщение для -MS- Найти все сообщения от -MS-
  № 3  
Ответить с цитированием
-MS-
 
Аватар для -MS-

Регистрация: Jun 2005
Сообщений: 367
пасиб... посмотрим

Старый 20.07.2005, 04:32
-MS- вне форума Посмотреть профиль Отправить личное сообщение для -MS- Найти все сообщения от -MS-
  № 4  
Ответить с цитированием
-MS-
 
Аватар для -MS-

Регистрация: Jun 2005
Сообщений: 367
респекты maksim_surguy, разобрался чуток переработал...
кому интересно с моими корявыми пояснениями и чуток попроще(без комнат и имен из цифр ) смотрим атач
зы. версия 2.0 будет со списком пользователей и приватом
Вложения
Тип файла: zip www.zip (33.0 Кб, 180 просмотров)

Старый 29.07.2005, 18:06
Viktor_UA вне форума Посмотреть профиль Отправить личное сообщение для Viktor_UA Найти все сообщения от Viktor_UA
  № 5  
Ответить с цитированием
Viktor_UA
 
Аватар для Viktor_UA

Регистрация: Jul 2005
Сообщений: 20
можно вопрос?
а как ты на своей машине тестишь это? как ты порт открываешь? и как это применять на серверах, ведь там закрытые ж порты или я не прав?

Старый 29.07.2005, 21:52
50%LameRa вне форума Посмотреть профиль Отправить личное сообщение для 50%LameRa Найти все сообщения от 50%LameRa
  № 6  
Ответить с цитированием
50%LameRa
 
Аватар для 50%LameRa

Регистрация: Jun 2005
Адрес: Н.Новгород
Сообщений: 107
Порты, которые слушает сервер ставяться в настройках сервера.
А теститься такое обычно telnet-oм.

Старый 29.07.2005, 23:11
Viktor_UA вне форума Посмотреть профиль Отправить личное сообщение для Viktor_UA Найти все сообщения от Viktor_UA
  № 7  
Ответить с цитированием
Viktor_UA
 
Аватар для Viktor_UA

Регистрация: Jul 2005
Сообщений: 20
Как протестировать эти вышерасположенные исходники? у меня не получается!
я у себя запускаю апачи и потом хтмл с флєш чатом! он не может установить соединение! подскажите, почему?
И вообще, что неоходимо сделать?
Заранее благодарен!


Последний раз редактировалось Viktor_UA; 30.07.2005 в 00:49.
Старый 30.07.2005, 01:06
-MS- вне форума Посмотреть профиль Отправить личное сообщение для -MS- Найти все сообщения от -MS-
  № 8  
Ответить с цитированием
-MS-
 
Аватар для -MS-

Регистрация: Jun 2005
Сообщений: 367
на локалке все работает, на серваке не пробовал
у мя стоит пакет денвер
виктор, а пхп помимо апача у тя стоит?
сначаля пхп скрипт запускай, а потом флэшку

Старый 30.07.2005, 16:00
Viktor_UA вне форума Посмотреть профиль Отправить личное сообщение для Viktor_UA Найти все сообщения от Viktor_UA
  № 9  
Ответить с цитированием
Viktor_UA
 
Аватар для Viktor_UA

Регистрация: Jul 2005
Сообщений: 20
Это безумие. Как последний чайник...не слушает меня комп.
загружаю Апачи, кидаю файлы в апачи, в папку fchat. Открываю браузер и пишу localhost/fchat/chat2.php. ПХП на тенлегу установлено. Браузер мне отвечает
Call to undefined function socket_create() in c:\program files\apache group\Apache\htdocs\fchat\chat2.php

Что не так?

Только что скачал денвер, поставил, закинул туда папку chat с chat2.php and chat.swf. Дальше запускаю, как ті говорил, пхп файл и он мне в ответ снова говорит

Call to undefined function socket_create() in c:\program files\apache group\Apache\htdocs\fchat\chat2.php

Что єто такое? Как с єтим боротся, плиз, подскажи!


Последний раз редактировалось Viktor_UA; 30.07.2005 в 16:15.
Старый 30.07.2005, 21:25
50%LameRa вне форума Посмотреть профиль Отправить личное сообщение для 50%LameRa Найти все сообщения от 50%LameRa
  № 10  
Ответить с цитированием
50%LameRa
 
Аватар для 50%LameRa

Регистрация: Jun 2005
Адрес: Н.Новгород
Сообщений: 107
это у тебя нет модуля сокетов для Php если у тя денвер качай с сайта.

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

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

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


 


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


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