[PHP] Data ontvangen via sockets

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • chuxiej
  • Registratie: Februari 2001
  • Laatst online: 13-07-2020
Ik probeer via een php-cgi script data ver ontvangen dat naar een poort op die server wordt gestuurd.

Ik probeer het via dit script:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?
$socket = socket_create(AF_INET, SOCK_STREAM, getprotobyname("TCP")); 
if(!@socket_setopt($socket, SOL_SOCKET, SO_REUSEADDR, 1))
{
    echo("socket_setopt() returned an error: ". socket_strerror(socket_last_error($socket)) ."\n");
    socket_close($socket);
    exit;
}
if(!@socket_bind($socket, "24.132.118.144", 7130))
{
    echo("socket_bind() returned an error: ". socket_strerror(socket_last_error($socket)) ."\n");
    socket_close($socket);
    exit;
}
if(!@socket_listen($socket))
{
    echo("socket_listen() returned an error: ". socket_strerror(socket_last_error($socket)) ."\n");
    socket_close($socket);
    exit;
}

while($socket) 
{ 
    $remote_fd  = socket_accept($socket);
    $listen     = fgets($remote_fd, 1024);
    
    print_r($listen);
} 

socket_close($fd);
?>


Het probleem is alleen dat er helemaal niets geprint wordt.
Weet iemand of ik iets fout doe?

[ Voor 7% gewijzigd door chuxiej op 04-11-2003 21:51 ]

www.dannyhiemstra.nl


Acties:
  • 0 Henk 'm!

  • Postman
  • Registratie: Februari 2000
  • Laatst online: 19:05
Kan het niet zo zijn dat je PHP-script oneindig blijft luisteren en dus nooit iets zal tonen? Misschien is flush() een oplossing?

Ik weet niet veel van sockets in PHP, maar het lijkt mij dat de buffer gewoon nooit getoond wordt :?

Acties:
  • 0 Henk 'm!

  • Mickman
  • Registratie: Juni 2001
  • Laatst online: 27-08 11:32
Ik weet niet welke versie van PHP je gebruikt, maar heb je ipv socket_setopt() al socket_set_option() geprobeerd?

Tevens kan je ook iets proberen met socket_create_listen()

Acties:
  • 0 Henk 'm!

  • mocean
  • Registratie: November 2000
  • Laatst online: 04-09 10:34
Als je nou die @'s weglaat krijg je mischien wel een foutmelding te zien

* mocean begrijpt niets van mensen die debuggen met @'s voor regels of error reporting uit.

Koop of verkoop je webshop: ecquisition.com