Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Хелп с Авторизацией в чате (http://www.flasher.ru/forum/showthread.php?t=100962)

KamaZz 08.09.2007 03:23

Хелп с Авторизацией в чате
 
Вложений: 1
Помогите сделать авторизацию во флеш-чате

Исходник прилагаю...

Если кому лень качать вот код:

Флеш
Код:

mySocket = new XMLSocket();
mySocket.onConnect = function(success) {
        if (success) {
                msgArea.htmlText += "<b>Соединение установлено, успешно...</b>";
        } else {
                msgArea.htmlText += "<b>Ошибка соединения, перепроверьте настройки...</b>";
        }
};
mySocket.onClose = function() {
        msgArea.htmlText += "<b>Ошибка соединения, проверьте подключение к интернету...</b>";
};
XMLSocket.prototype.onData = function(msg) {
        msgArea.htmlText += msg;
};
mySocket.connect("127.0.0.1", 3306);
function msgGO() {
        if (inputMsg.htmlText != "") {
                mySocket.send(inputMsg.htmlText+"\n");
                inputMsg.htmlText = "";
        }
}
pushMsg.onRelease = function() {
        msgGO();
};

PHP
Код:

#!/usr/bin/php -q
<?php

error_reporting(E_ALL);

set_time_limit(0);

ob_implicit_flush();

$address = '127.0.0.1';
$port = 3306;

function send_Message($allclient, $socket, $buf) {
  foreach($allclient as $client) {
                 
      socket_write($client, "$socket wrote: $buf");
  }
}

if (($master = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) < 0) {
  echo "socket_create() failed, reason: " . socket_strerror($master) . "\n";
}

socket_set_option($master, SOL_SOCKET,SO_REUSEADDR, 1);

if (($ret = socket_bind($master, $address, $port)) < 0) {
  echo "socket_bind() failed, reason: " . socket_strerror($ret) . "\n";
}

if (($ret = socket_listen($master, 5)) < 0) {
  echo "socket_listen() failed, reason: " . socket_strerror($ret) . "\n";
}

$read_sockets = array($master);

while (true) {
  $changed_sockets = $read_sockets;
 
  $num_changed_sockets = socket_select($changed_sockets, $write = NULL, $except = NULL, NULL);
 
  foreach($changed_sockets as $socket) {
                 
      if ($socket == $master) {
                         
          if (($client = socket_accept($master)) < 0) {
              echo "socket_accept() failed: reason: " . socket_strerror($msgsock) . "\n";
              continue;
          } else {
              array_push($read_sockets, $client);
          }
      } else {
         
          $bytes = socket_recv($socket, $buffer, 2048, 0);
                 
          if ($bytes == 0) {
              $index = array_search($socket, $read_sockets);
              unset($read_sockets[$index]);
              socket_close($socket);
          }else{
                       

                                  $allclients = $read_sockets;
                          array_shift($allclients);
                               
                          send_Message($allclients, $socket, $buffer);
                        }
      }
     
  }
}

?>

BAT
Код:

c:/AppServ/php5/php.exe -q c:/AppServ/www/socketTut.php
ЗЫ сразу говорю, писал все это, не я...

etc 08.09.2007 14:45

И какую помощь вы ожидаете от форумчан? Чтобы они скачали то, что не вы писали и сделали вашу работу за вас? Оригинальный подход, да.
Обратитесь к тому, кто писал это, а сюда приходите с конкретными проблемами в реализации чего либо.
А то сами вы ничего не писали и предлагаете поковыряться в этом другим.


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

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