PHP und IRC CLIENT

  • Themenstarter Themenstarter snoopyman
  • Beginndatum Beginndatum
S

snoopyman

Hi, ich hab das Tutorial mal durchgearbeitet. Am Anfang erstmal nur probiert ob er sich überhaupt mit dem server verbindet, ja das tut er, aber sobald ic hdie while shcleife mit (!feof($this->ircsocket) einbidne lässt sich die seiten icht mehr laden und es wird auhc keien verbindung zum server hergestellt. hier mal die klasse
PHP:
die main.php
<?
class IRC
{
	var $host;
	var $port;
	var $nick;
	var $ircsocket;
	function IRC($host,$port,$nick)
	{
		$this->host = $host;
		$this->port = $port;
		$this->nick =$nick;
		$this->Connect();
	}
	function Connect()
	{
		$this->ircsocket = fsockopen($this->host,$this->port);
		if(!$this->ircsocket)
		{
			echo"<p class=Meldungen>Fehler beim verbinden mit Server ".$this->host."</p>";
		}
		else
		{
			echo"<p class=Meldungen>Erfolgreich mit Server ".$this->host." verbunden</p>";
			//////////////Login///////////
			fputs($this->ircsocket,"USER ".$this->nick." 217.225.40.215 *:Stefan\r\n");
			fputs($this->ircsocket,"NICK ".$this->nick."\r\n");
		}
	}
	function Parse()
	{
		while(!feof($this->ircsocket))
		{
			$incoming = fgets($this->ircsocket,1024);
			echo $incoming;
		}
	}
}
so und hier der aufruf in der client.php datei

PHP:
<?
include("config.inc");
include("main.php");
$IRC = new IRC($host,$port,$nick);
$IRC->Parse();
?>
 
hm.
versuchs mal so:

Code:
function Parse()
    {
        while(!feof($this->ircsocket))
        {
            $incoming = fgets($this->ircsocket,1024);
            echo $incoming;
            flush();                        // Das hier ist neu
        }
    }

die seite lädt. nur die augabe von allem geschieht erst nach nem flush denk ich mal.


anknüpfend daran eine frage von mir an alle:
mit der "endlosen" while schleife hole ich mir alles vom IRC-Server und ich kann auch innerhalb der selben PHP sachen & befehle senden. doch wie schaffe ich es das ich dynamisch text senden kann? das es also eine form zum eingeben von text gibt und die verbindung aufrecht erhalten wird und die sachen wirklich raus gehen?
 
Zuletzt bearbeitet:
Zurück