Eerst de code posten. Ik denk dat er ergens een heel klein foutje moet inzitten want hij geeft als output alles maar blijft halverwege de MOTD steken en als hij de rest weergeeft disconnect hij. (Read error: EOF from client)
Oja, hij geeft geen enkele foutmelding, vraag dus niet om errors
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
| <? // General settings $server = "irc.quakenet.org"; // Server $port = '6667'; // Port number $channel = "#Killerboy"; // Channel $bot_nick = "KBDesign"; // Nick of the bot $botname = "KillerBoy Bot services"; // Real name ?> <html> <head> <title>Status for <? echo $bot_nick; ?> on server <? echo $server; ?></title> </head> <body bgcolor="#000000" text="#FFFFFF"> <?php error_reporting(63); set_time_limit(0); // Verbinding maken met de server voor data $input = fsockopen($server, $port, $errno, $errstr, 9999); $loop = 0; $connected = 0; while ($line = fgets($input, 512)){ $el = explode(' ', $line); echo $line."<br>"; if( count($el) > 3){ // Houd van alle gegevens alleen nickname over $el_userstr = $el[0]; $el_user = split('!', $el_userstr); $el_user = str_replace(':', ' ', $el_user[0]); // Achterhaal type bericht $el_type = $el[1]; if( $el_type == 'PRIVMSG' ){ $el_channel = $el[2]; $el_msg = ''; for($i=3; $i<count($el); $i++){ $el_msg.=$el[$i].' '; } echo "Bericht: $el_msg <br>"; } } else if( count($el) == 2) { $el_type = $el[0]; $el_msg = str_replace(':', '', $el[1]); } // Als de server pingt, terug pongen if( $el_type == 'PING' ){ fputs($input,'PONG '.$el_msg."\r\n"); echo "Ping? Pong!<br>"; } // Kijken naar de loop, zonodig aanmelden if( $loop == 0 ){ fputs($input,"USER ".$bot_nick." 0 * :".$botname."\n"); fputs($input,"NICK ".$bot_nick."\n"); echo "Aangemeld als '$bot_nick' op server '$server'<br>"; } // Laat channel joinen if( $el_type == 376 ){ $connected = 1; fputs($input,"join $channel\r\n"); echo "Channel $channel gejoined<br>"; fputs($input,"PRIVMSG $channel :WHEE!!!"); } // Als er een fout optreedt stoppen else if( ereg("^ERROR", $line) ){ fputs($input,"quit\r\n"); echo "Fout! Proces gestopt.<br>"; break; } // Als nickname al bezet is, stoppen else if( $el_type == 433 ){ fputs($input,"quit\r\n"); echo "Nickname is al bezet. Proces gestopt.<br>"; break; } $loop++; } ?> |
Oja, hij geeft geen enkele foutmelding, vraag dus niet om errors