Brauche Rat ( Expertenfrage )

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Brauche Rat ( Expertenfrage )

    Hallo!

    Folgendes ist zu realisieren:

    Ich habe eine Seite1.php die über eine C++ Anwendung angesteuert wird. Diese Seite soll sich mit Werten, die sie von der Anwendung bekommt, (server port nick etc.) zu einem IRC-Server verbinden.

    Das macht sie auch und gibt dann alle Nachrichten auf der Seite aus.
    Diese Nachrichten werden von der C++ Anwendung gelesen und ausgewertet.

    Jetzt habe ich aber das Problem dass man natürlich die Verbindung von der C++ Anwendung aus beeinflussen will. Sei es andere Channels joinen oder Nachrichten verschicken.

    Zuerst dachte ich mir ich mache zB
    SendMessage.php und übergebe dem die Nachricht. In der SessionID wird dann der Socket gespeichert auf Seite1 und SendMessage verwendet dann den gleichen und verschickt die Nachricht. Wunderbar!

    Nur leider kann ich keinen Socket an andere Scripts weitergeben

    Dann dachte ich mir:
    Ich mache eine MYSQL Datenbank, die die auszuführenden Dinge speichert.
    ZB Join #channel
    Die Seite1.php, die in einer Endlosschleife die Nachrichten abholt, soll in dieser Schleife die MYSQL Datenbank nach neuen auszuführenden Dingen untersuchen und diese durchführen.
    Über die Seiten SendMessage.php zB werden die auszuf. Dinge in die Datenbank eingetragen.

    Problem hierbei:

    Ich empfange die Daten ja mit fgets.
    Sobald keine Daten mehr vom Socket ankommen blockiert fgets solange, bis wieder Daten ankommen. D.h. auch die ganze Schleife wird blockiert und die auszuführenden Dinge können erst wieder aus der DB gelesen werden, wenn Daten vom Server ankommen.

    PHP bietet keine Threads an, oder? Dann würde ich die Dinge in einem Thread abholen und ausführen...

    Habt ihr andere Ideen wie ich diese Art von Multitasking (gerne auch ohne MYSQL) erreichen kann?

    So dass ich Daten abfangen kann, jedoch auch welche versenden kann, ohne davor auf ankommende Daten warten zu müssen.

    Ich hoffe ihr habt mich verstanden und könnt mir helfen

    Viele liebe Grüße,
    Kevin

    P.S.: Bin leider eher der C++-Profi und kenn mich mit PHP noch nicht perfekt aus ;(

  • #2
    und mit C++ kannst du keine verbindung zum netz aufbauen?
    warum der umweg über php?
    INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


    Kommentar


    • #3
      threads kann php durchaus verwalten, aber nur intern... so gesehen ist jeder Aufruf des php-scripts ein neuer thread.

      Wieso verwendest du keine Threads in deiner Desktop applikation?
      Und, wenn du mysql dabei verwenden willst, dann gibt's da die mysql.h....

      Der Umweg über php ist mir auch irgendwie unklar.

      Kommentar


      • #4
        Die C++ Anwendung sitzt hinter einer Firewall.

        Die PHP Scripts sind auf dem Webserver, auf dem auch der IRC Server läuft....daher war der PHP Umweg geplant.

        Bekommt man das mit PHP überhaupt nicht hin oder was?

        Dann muss ich wohl einen C++ Proxy schreiben, der auf Port 80 auf dem IRC Server Rechner läuft und meine C++ Anwendung bedient.... grml

        Wollte eigentlich lieber PHP verwenden

        Kevin

        Kommentar


        • #5
          Original geschrieben von Kevinst
          [..] P.S.: Bin leider eher der C++-Profi und kenn mich mit PHP noch nicht perfekt aus ;( [..]

          [..]Wollte eigentlich lieber PHP verwenden[..]
          also ich würde das lieber verwenden wollen, wo ich mich als selbst als pofi bezeichne ..

          kannst du deine firewall nicht entsprechend einstellen ?
          mfg,
          [color=#0080c0]Coragon[/color]

          Kommentar


          • #6
            OffTopic:


            sry, dass ich nix zur problemlösung posten kann, aber könntest du mir sagen, was für ne klasse du zum connecten an den irc-server benutzt? sowas suche ich atm.
            hab bisher allerdings nur eine gefunden die was kostet. ich hätts aber lieber gern kostenlos, wenns sowas gibt.

            MfG

            MfG
            aim
            Lies mich jetzt!
            - OT-Tags-Liebhaber und BB-Code-Einrücker -

            Kommentar

            Lädt...
            X