Hab grad in phpinfo etwas von sockets usw gefunden...:
#!/usr/local/bin/php -q
<?php
error_reporting (E_ALL);
/* Das Skript wartet auf hereinkommende Verbindungsanforderungen. */
set_time_limit (0);
/* Die implizite Ausgabe wird eingeschaltet, so dass man sieht, was gesendet wurde. */
ob_implicit_flush ();
$address = '192.168.1.53';
$port = 10000;
if (($sock = socket_create (AF_INET, SOCK_STREAM, 0)) < 0) {
echo "socket_create() fehlgeschlagen: Grund: " . socket_strerror ($sock) . "\n";
}
if (($ret = socket_bind ($sock, $address, $port)) < 0) {
echo "socket_bind() fehlgeschlagen: Grund: " . socket_strerror ($ret) . "\n";
}
if (($ret = socket_listen ($sock, 5)) < 0) {
echo "socket_listen() fehlgeschlagen: Grund: " . socket_strerror ($ret) . "\n";
}
do {
if (($msgsock = socket_accept($sock)) < 0) {
echo "socket_accept() fehlgeschlagen: Grund: " . socket_strerror ($msgsock) . "\n";
break;
}
/* Anweisungen senden. */
$msg = "\nWillkommen auf dem PHP Testserver. \n" .
"Um zu beenden, geben Sie 'quit' ein. Um den Server herunterzufahren, geben Sie 'shutdown' ein.\n";
socket_write($msgsock, $msg, strlen($msg));
do {
if (FALSE === ($buf = socket_read ($msgsock, 2048))) {
echo "socket_read() fehlgeschlagen: Grund: " . socket_strerror ($ret) . "\n";
break 2;
}
if (!$buf = trim ($buf)) {
continue;
}
if ($buf == 'quit') {
break;
}
if ($buf == 'shutdown') {
socket_close ($msgsock);
break 2;
}
$talkback = "PHP: Sie haben '$buf' eingegeben.\n";
socket_write ($msgsock, $talkback, strlen ($talkback));
echo "$buf\n";
} while (true);
socket_close ($msgsock);
} while (true);
socket_close ($sock);
?>
Hört sich sowas gut an??
Soweit ich´s verstanden habe, wartet hier der Server, bis er etwas geschickt bekommt.
Und wenn der client was in der datenbank ändern will, dann schickt er ja die daten an den server.
Der kann doch diese daten, die er bekommen hat an einen anderen client responden, oder??