SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Fortgeschrittene CSS-Techniken

Fortgeschrittene CSS-Techniken zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 20.06.2012, 18:07:53
Psynox Psynox ist offline
Anfänger
 
Registriert seit: Oct 2008
Alter: 33
Beiträge: 6
socket_write ignoriert

Hallo liebe Forengemeinde,

ich hoffe ich bin hier richtig ansonsten bitte in die richtige Sparte verschieben.

Ich habe bereits in Google nach eine Lösung für mein Problem gesucht, leider jedoch nicht fündig geworden.

Problem ist folgendes.

Zur Kommunikation zwischen PHP und einem Java Server wird ein Socket verwendet.

Wenn ich in der Funktion readSocket gleich ein die() einsetze, werden die Daten über socket_write an den Server gesendet, bekomme logischerweise keine Rückmeldung mehr (erhalte irgendwann socket_read() fehlgeschlagen: Grund: Connection reset by peer). Habe ich jedoch in readSocket kein die() eingefügt so akzeptiert der Server zwar den Client, jedoch werden keine Daten mehr versendet an den Server. Woran kann dies liegen? Fehlermeldungen werden keine produziert

Ablauf:
PHP-Code:
$oSocket = new Socket();
$oSocket->connect();
$oSocket->writeSocket(json_encode($_POST));
echo 
$oSocket->readSocket();
$oSocket->close(); 
Socket-Class
PHP-Code:
class Socket {
    private 
$sAdress 'xxx';
    private 
$iPort 000;
    private 
$rSocket NULL;
    private 
$rMsgSocket NULL;
    private 
$sMessage "";
    private 
$sResponse "";
    
    function 
connect() {
        if ((
$this->rSocket socket_create(AF_INETSOCK_STREAMSOL_TCP)) === false) {
            echo 
"socket_create() fehlgeschlagen: Grund: " socket_strerror(socket_last_error()) . "\n";
        }
        
        if((
socket_connect($this->rSocket$this->sAdress$this->iPort)) < 0){ 
            echo 
"socket__connect() fehlgeschlagen: Grund: " socket_strerror(socket_last_error()) . "\n";
        }
    }
    
    function 
writeSocket($msg) {
        
$this->sMessage $msg;
        if (
false === socket_write($this->rSocket$this->sMessagestrlen($this->sMessage))) {
            echo 
"socket_write() fehlgeschlagen: Grund: " socket_strerror(socket_last_error()) . "\n";
        }
    }
    
    function 
readSocket() {
        
$this->rMsgSocket $this->rSocket;
        if (
false === ($this->sResponse socket_read($this->rMsgSocket2048PHP_NORMAL_READ))) {
            echo 
"socket_read() fehlgeschlagen: Grund: " socket_strerror(socket_last_error($this->rMsgSocket)) . "\n";
        }
        return 
$this->sResponse;
    }
    
    function 
close() {
        
socket_close($this->rMsgSocket);
        
socket_close($this->rSocket);
    }

Hoffe ihr könnt mir da weiterhelfen.
Mit Zitat antworten
  #2  
Alt 05.07.2012, 16:26:27
Xor Xor ist offline
Anfänger
 
Registriert seit: Aug 2008
Alter: 35
Beiträge: 124
AW: socket_write ignoriert

Hi,

Zitat:
Wenn ich in der Funktion readSocket gleich ein die() einsetze, werden die Daten über socket_write an den Server gesendet, bekomme logischerweise keine Rückmeldung mehr (erhalte irgendwann socket_read() fehlgeschlagen: Grund: Connection reset by peer).
Wenn du ein die() einsetzt sollte danach garnix mehr kommen...? Und warum solltest du das wollen? (Socket wieder schliessen etc?)

Zitat:
Habe ich jedoch in readSocket kein die() eingefügt so akzeptiert der Server zwar den Client, jedoch werden keine Daten mehr versendet an den Server.
Der Server sollte den Client bereits nach "$oSocket->connect(); " akzeptieren.

Was sagt der Java-Server wenn du nur connectest und dann wieder schliesst? kriegt er das überhaupt mit?

Lg
__________________
Allergisch auf:
  • "Ich brauch ein Script für..."
  • "...dringend..."
  • Anfrage-->Antwort-->Nie wieder melden
Mit Zitat antworten
Antwort

Stichworte
php, socket, socket_read, socket_write


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Sie haben dieses Thema abonniert Mod-Rewrite Problem - Typo ignoriert Rule ksticker Off Topic Area 0 20.09.2008 21:58:34
Umlaute und Accent werden ignoriert mororu PHP Grundlagen 5 12.04.2007 09:23:41
chr(13) wird ignoriert Willow PHP Grundlagen 0 18.07.2006 20:46:05
HTML in PHP-Datei: <div style=...> wird ignoriert! stille_quelle PHP Grundlagen 8 15.05.2006 11:53:14
Aufrufparameter werden ignoriert Sandy PHP für Fortgeschrittene und Experten 2 12.02.2006 21:55:56


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:12:00 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt