[SP-pm] Perl Socket

Eduardo Verissimo everissimo at gmail.com
Thu Oct 28 07:53:54 PDT 2010


Eu acho que o escopo de seu projeto está errado. Está perdendo um tempo
enorme tentando reinventar a roda. Eu o aconselho a usar ModPerl, ou, melhor
ainda, Catalyst, e fazer o que você precisa em algumas linhas sem perda de
tempo.

Se você só quer fazer uma atualização de informações em uma página, está
dando tiro de canhão para matar mosca.

Abraço!

2010/10/28 João Moura <joaomdmoura em gmail.com>

> Estou desenvolvendo ainda, tirei as partes de socket_write e socket_read pq
> estava tendo alguns problemas bizzaros, e acabei fazendo essa gambits com
> json por enquanto, oque eu preciso na prática é uma interação entre os
> clientes que estão acessando o servidor, de forma que se um uma div for
> movimentada em um o outro possa visualizar isso em tempo real.
>
> Os problemas que estava tendo é que estava dando acess denied para o
> socket_bind, e o socket entrava em um looping bizzarro de erros, por isso
> apelei para a gambits por enquanto rs.
>
> Abcs
>
> 2010/10/28 Stanislaw Pusep <creaktive em gmail.com>
>
> Não entendi... Vc cria o socket, mas não usa send() nem recv() nele... Qual
>> o propósito?
>> Pelo que reparei, ele conecta na porta 80... Para isso, Perl tem um belo
>> de um wrapper :)
>> http://search.cpan.org/~gaas/libwww-perl-5.837/lib/LWP/Simple.pm<http://search.cpan.org/%7Egaas/libwww-perl-5.837/lib/LWP/Simple.pm>
>>
>> ABS()
>>
>>
>>
>>
>> 2010/10/28 João Moura <joaomdmoura em gmail.com>
>>
>>> Claro Solli, posso disponibiliza-lo sim, provavelmente deve ter alguma
>>> maneira mais fácil de obter o mesmo resultado, segue abaixo:
>>>
>>> <?php
>>> error_reporting (E_ALL);
>>> set_time_limit (0);
>>> ob_implicit_flush ();
>>> $service_port = getservbyname ('www', 'tcp');
>>> $address = gethostbyname ('www.joaomdmoura.com');
>>> $socket = socket_create (AF_INET, SOCK_STREAM, 0);
>>> if ($socket < 0) {
>>>     echo "socket_create() failed: reason: " . socket_strerror ($socket) .
>>> "\n";
>>> } else {
>>>     echo "OK.\n";
>>> }
>>> $result = socket_connect ($socket, $address, $service_port);
>>> if ($result < 0) {
>>>     echo "socket_connect() failed.\nReason: ($result) " .
>>> socket_strerror($result) . "\n";
>>> } else {
>>>     echo "OK.\n";
>>> }
>>> do {
>>> $conecta = mysql_connect('XXXXXXXXXXXXXXX', 'XXXX', 'XXXXXXXXX');  //
>>> Substitui as informações do meu banco rsrs
>>> mysql_select_db('XXXXXXXXX', $conecta);// Substitui as informações do
>>> meu banco rsrs
>>> $sql = "SELECT * FROM teste";
>>> $query = mysql_query($sql);
>>> $fp = fopen("teste.js", "w");
>>> $comeco = '({
>>>         "players": [';
>>> $escreve2 = fwrite($fp, $comeco);
>>> while ($linha = mysql_fetch_array($query)) {
>>>                 $id = $linha['id'];
>>>                 $qual = $linha['qual'];
>>>                 $valor = $linha['valor'];
>>>                 $pronto = $linha['pronto'];
>>>                 $pieces = explode(",", $valor);
>>>                 $geral_info = array(    "qual" => $qual,
>>>                                         "x" => $pieces[0],
>>>                                         "y" => $pieces[1],
>>>                                         "pronto" => $pronto
>>>                                     );
>>>                 $json = json_encode($geral_info);
>>>                 $escreve = fwrite($fp, $json);
>>>                 $vigula = fwrite($fp, ",");
>>>                 echo $json;
>>> }
>>> $final = ' ]
>>> })';
>>> $escreve3 = fwrite($fp, $final);
>>> fclose($fp);
>>> } while (true);
>>> socket_close ($socket);
>>> ?>
>>>
>>> 2010/10/28 Solli Honorio <shonorio em gmail.com>
>>>
>>> João,
>>>>
>>>> Você pode disponibilizar o teu código em PHP para eu enteder o que você
>>>> queria e explicar como fazer em Perl !
>>>>
>>>> Solli M. Honorio
>>>>
>>>> 2010/10/28 João Moura <joaomdmoura em gmail.com>
>>>>
>>>> Bom dia, vim agradecer, obrigado pela colaboração à todos, não consegui
>>>>> fazer em Perl, mas fiz um socket em php que faz a consulta e salva um js com
>>>>> json,e depois resgato isso via ajax.
>>>>>
>>>>> Mesmo assim obrigado.
>>>>>
>>>>> Abcs, João Moura
>>>>>
>>>>> 2010/10/26 Solli Honorio <shonorio em gmail.com>
>>>>>
>>>>> Procure por JSON neste FAQ
>>>>>>
>>>>>> http://search.cpan.org/dist/DBIx-Class/lib/DBIx/Class/Manual/FAQ.pod
>>>>>>
>>>>>> Solli
>>>>>>
>>>>>>  2010/10/26 João Moura <joaomdmoura em gmail.com>
>>>>>>
>>>>>>> Se flar besteira perdoem-me rs é minah primeira dúvida.
>>>>>>>
>>>>>>>
>>>>>>> Estou precisando desenvolver um socket que faça conexão com um bd
>>>>>>> mysql e escreva um arquivos js, com as informações em json, de preferencia
>>>>>>> que fique fazendo isso em looping no servidor.
>>>>>>>
>>>>>>> Vocês sabem me dar um norte de como poderia desenvolver isso ou se
>>>>>>> acho algo meio pronto que me permita editar?
>>>>>>>
>>>>>>> Busquei fazer em PHP, mas queria saber se não vale a pena desenvolver
>>>>>>> em Perl.
>>>>>>>
>>>>>>> Abs, João Moura
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> SaoPaulo-pm mailing list
>>>>>>> SaoPaulo-pm em pm.org
>>>>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> "o animal satisfeito dorme". - Guimarães Rosa
>>>>>>
>>>>>> _______________________________________________
>>>>>> SaoPaulo-pm mailing list
>>>>>> SaoPaulo-pm em pm.org
>>>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>>>
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> SaoPaulo-pm mailing list
>>>>> SaoPaulo-pm em pm.org
>>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> "o animal satisfeito dorme". - Guimarães Rosa
>>>>
>>>> _______________________________________________
>>>> SaoPaulo-pm mailing list
>>>> SaoPaulo-pm em pm.org
>>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>>
>>>
>>>
>>> _______________________________________________
>>> SaoPaulo-pm mailing list
>>> SaoPaulo-pm em pm.org
>>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>>
>>
>>
>> _______________________________________________
>> SaoPaulo-pm mailing list
>> SaoPaulo-pm em pm.org
>> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>>
>
>
> _______________________________________________
> SaoPaulo-pm mailing list
> SaoPaulo-pm em pm.org
> http://mail.pm.org/mailman/listinfo/saopaulo-pm
>
-------------- Pr?xima Parte ----------
Um anexo em HTML foi limpo...
URL: <http://mail.pm.org/pipermail/saopaulo-pm/attachments/20101028/8d4fcc98/attachment.html>


More information about the SaoPaulo-pm mailing list