Witam, mam taki oto skrypt:
config.php
<?php
$server_host = "irc.quakenet.org";
$server_port = 6667;
$server_chan = "#mojkanal";
?>
bot.php
<?php
include("config.php");
function SendCommand ($cmd){
}
$nickname = $_POST['nick'];
echo "<form name=\"form1\" method=\"post\" action=\"irc.php\">\n\r"; echo "<p align=\"center\">Please Insert a Nickname.\n\r"; echo "<input type=\"text\" name=\"nick\"> \n\r"; echo "<p align=\"center\">\n\r"; echo "<input type=\"submit\" name=\"Submit\" value=\"Join IRC\">\n\r"; }
else
{
$server['SOCKET'] = @fsockopen($server_host, $server_port, $errno, $errstr, 2
); if($server['SOCKET']){
SendCommand("PASS NOPASS\n\r");
SendCommand("NICK $nickname\n\r");
SendCommand("USER $nickname USING PHP IRC\n\r");
#zapetlenie
while(!feof($server['SOCKET'])){
#pobiera dane i wyswietla
$server['READ_BUFFER'] = fgets($server['SOCKET'], 1024
); echo "[RECIVE] ".$server['READ_BUFFER']."<br>\n\r";
#gdy linia wiadomosci wynosi 200 to jest wykonana komenda dołączania na serwer
if(strpos($server['READ_BUFFER'], "200")){ SendCommand("JOIN $server_chan\n\r");
}
#wysylanie pingu
if(substr($server['READ_BUFFER'], 0, 6) == "PING :"){ SendCommand
("PONG :".substr($server['READ_BUFFER'], 6)."\n\r");}
$get = explode(' ', $server['READ_BUFFER']); $command = $split[1];
echo 'Napisano komende '.$command.'<br>';
if($command == 'lol'){
SendCommand("PRIVMSG $server_chan :tutaj_jakis_tekst\n\r");
}
}
}
}
?>
Jest to bot IRC. Połączenie się z serwerem, wejście na kanał i reszta działa, oprócz warunku if($command == 'lol'). Po wpisaniu na kanale "lol" na stronie odpalonego bota wyświetla się "Napisano komende lol", więc zmienna $command napewno ma przypisaną wartość "lol". Na stronie bota powinno zostać wyświetlone "Uzycie komendy", a tak nie jest. Nie rozumiem dlaczego nie działa. Proszę o pomoc.