Welkom, Gast. Je bent niet ingelogd.

PHP Probleempje

Robertenzo
Geplaatst op: 16 Oct 2007, 17:51
PimpCoins: 0
💸+
Bewerken Quote

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
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
<?php 
//////////////////////Chatbot voor Mastaline Chatbox/////////////////////////// 
/////////////////////////////Made by Stijn///////////////////////////////////// 

//Eerst zorgen we er voor dat het script oneindig mag doorlopen. 
ini_set("max_time_limit",0); 

//En dan gaan we instellingen definiëren: 
//Eerst de Chatserver: 
$bot['server'] = "mlchatserv.mine.nu"; 
//De poort van de Sjetserver: 
$bot['poort'] = "1337"; 
//Dan het IP waar je deze bot op draait. 
//Vind je zo: start, uitvoeren, cmd, ping <www.jouwwebsite.com> 
$bot['hostname'] = "213.93.210.112"; //ppx: ga ff moeilijk doen ofzo. =P 
//De nickname van de bot: 
$bot['nick'] = "testbot"; 
//Wachtwoord als je bot een account heeft. Laat leeg als ie niet heeft: 
$bot['loginpass'] = ""; 
//De tekstkleur van de bot: 
$bot['kleur'] = "7995408"; 
//De versie: 
$bot['versie'] = "MLC013B"; 


//Nu maken we ff enkele functies aan: 
function sockwrite($data){ 
    global $bot; 
    socket_write($bot['socket'],$data."\r\n"); 
} 
function zendbericht($bericht) 
{ 
global $bot; 
sockwrite("MSG ".$bot['kleur']."    ".$bericht."@@@"); 
usleep(2000); 
} 
function privebericht($bericht, $nick) 
{ 
sockwrite("PMG ".$nick."    ".$bericht."@@@"); 
} 
function bericht($bericht) 
{ 
echo $bericht."<br /> 
"; 
flush(); 
} 

//Socket aanmaken: 
if (!$bot['socket']=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)) { 
    die("De socket kon niet worden aangemaakt."); 
} 

//Socket vastbinden aan botserver: 
if (!@socket_bind($bot['socket'],$bot['hostname'])) { 
  die("Kon de verbinding niet koppelen aan <b>".$bot['hostname']."</b>. Misschien fout?"); 
} 

//En verbinden met de sjetserver: 
if (!@socket_connect($bot['socket'],$bot['server'],$bot['poort'])) { 
  die("Kon geen verbinding maken met de server: <b>".$bot['server']."</b>. Misschien fout?"); 
} 

//En dan gaan we inloggen :-) 
//Eerst moeten we de versie van onze client sturen. 
sockwrite("VER ".$bot['versie']."@@@"); 

//Gebruikersnaam en/of wachtwoord sturen: 
if (!empty($bot['loginpass'])) 
{ 
socket_write($bot['socket'], "USR ".$bot['nick']."@@@".chr(13)); 
socket_write($bot['socket'], "PWD ".$bot['loginpass']."@@@\r\n"); 
} else { 
sockwrite("USR ".$bot['nick']."@@@"); 
} 

echo "<hr /> 
Alle logindata is verstuurd!"; 
flush(); 

$msgi = 0; 

//En dan starten we nu de main while: deze loopt elke keer als ie een berichtje binnenkrijgt. :-) 
while ($data=socket_read($bot['socket'],65000,PHP_BINARY_READ)) 
{ 
//Ik tel graag het hoeveelste berichtje er binnen gekomen is: :+ 
$msgi++; 
//De eerste 3 letters van bericht is een commando. 
$commando = substr($data, 0, 3); 
if ($commando == "ERR") 
{ 
    bericht ("ERR commando"); 
    bericht("<font color="red">".$data."</font>"); 
     
     
} elseif ($commando == "MSG") 
{ 
    //Iemand zei iets! 
    $exploded = explode("    ", $data); 
    $enickcommand = explode(" ", $exploded[0]); 
    $nick = $enickcommand[1]; 
    $kleur = $exploded[1]; 
    $array = explode("@@@", $exploded[2]); 
    $bericht = $array[count($array) - 2]; 
    bericht ("Bericht van ".$nick.": ".$bericht); 
    if ($bericht == "hoi") 
    { 
        //Als iemand hoi zegt, moeten we iets terugzeggen! 
        zendbericht("Hoi, ".$nick); 
    } 
} elseif ($commando == "LEA") 
{ 
    //Iemand gaat buiten 
    $exploded = explode(" ", $data); 
    $exploded2 = explode("@@@", $exploded[1]); 
    $nick = $exploded2[count($exploded2) - 2]; 
    zendbericht ("Bye, ".$nick."!"); 
} elseif ($commando == "USR") 
{ 
    //Iemand komt binnen 
    $exploded = explode(" ", $data); 
    $exploded2 = explode("@@@", $exploded[1]); 
    $nick = $exploded2[count($exploded2) - 2]; 
    zendbericht ("Welkom, ".$nick."!"); 
} elseif ($commando == "PNG") 
{ 
    //Onno speelt graag pingpong. 
    $exploded = explode(" ", $data); 
    $exploded2 = explode("@@@", $exploded[1]); 
    $ping = $exploded2[count($exploded2) - 2]; 
    if ($ping == "ping") 
    { 
        //Als Onno ping doet, moeten wij Pong doen eh :+ Logisch toch? 
        sockwrite("PNG pong@@@"); 
    } 
     
} elseif ($commando == "MEG") 
{ 
    //Iemand zei /me! 
    $exploded = explode("    ", $data); 
    $enickcommand = explode(" ", $exploded[0]); 
    $nick = $enickcommand[1]; 
    $bericht = ""; 
    for ($i = 0; $i < count($enickcommand) - 1; $i++) 
    { 
        if ($i > 0) 
        { 
            $bericht .= $enickcommand[$i]." "; 
        } 
    }//for 
    bericht ("/me van ".$nick.": ".$bericht); 
    //Hier reageert de bot niet echt op (tenzij jij dat bij maakt) 
    //Wat ie zei, zit in $bericht 
} elseif ($commando == "PMG") 
{ 
    //We krijgen een privebericht! =O 
    $exploded = explode("    ", $data); 
    $enickcommand = explode(" ", $exploded[0]); 
    $nick = $enickcommand[1]; 
    $array = explode("@@@", $exploded[1]); 
    $bericht = $array[count($array) - 2]; 
    bericht ("Privebericht van ".$nick.": ".$bericht); 
    if ($bericht == "hoi") 
    { 
        //als iemand hoi zegt, gaan we antwoorden hé :-) 
        privebericht("Hoiii! Alles goed?", $nick); 
    } 
} elseif ($commando == "NOT") 
{ 
    //Er komt een notice binnen (een berichtje dat enkel admins en de server kan versturen) 
    bericht("Notice: ".$data); 
     
} elseif($commando == "STA") 
{ 
    //Er komt een statuswijziging binnen. 
    //STA -1: Iemand komt online 
    //STA 1: Iemand wordt Admin 
    //STA 2: Iemand gaat offline 
    //STA 4: Iemand wordt bot 
    bericht ("STAtus: ".$data); 
     
} else { 
    //Sja... Als er iets onbekend binnenkomt, moeten we een fout geven eh! 
    bericht ("Onbekend commando! ".$data); 
} 

}//while moet ook afgesloten worden 
echo "De bot is gestopt! Er zijn ".$msgi." berichtjes binnengekomen! =D"; 
?>

Dat is mijn script .
Eventjes de fout:

Fatal error: Call to undefined function socket_create() in C:\wamp\www\testbot.php on line 49

Basjee
Octo
Geplaatst op: 16 Oct 2007, 17:53
PimpCoins: 0
💸+
Bewerken Quote

Je server ondersteund de functie socket_create() niet.

Robertenzo
Geplaatst op: 16 Oct 2007, 18:03
PimpCoins: 0
💸+
Bewerken Quote

Ik heb op eigen pc... hoe kan k dat repareren?
k gebruik WAMP5

Riciboy
GewoonBriljant
Geplaatst op: 16 Oct 2007, 18:40
PimpCoins: 0
💸+
Bewerken Quote

gebruik [url]http://lucasvd.nl/index.php?mode=extended&news_id=5&page=2 [/url]

[Laatst bewerkt door Riciboy op dinsdag 16 oktober 2007, om 18:41]
Robertenzo
Geplaatst op: 16 Oct 2007, 19:10
PimpCoins: 0
💸+
Bewerken Quote

Kan neit rici, het is voor mastaline chat bot

Basjee
Octo
Geplaatst op: 16 Oct 2007, 19:19
PimpCoins: 0
💸+
Bewerken Quote

USB-Webserver gebruik ik zelf, werkt erg prettig!

Robertenzo
Geplaatst op: 16 Oct 2007, 19:31
PimpCoins: 0
💸+
Bewerken Quote

Basjee schreef:

USB-Webserver gebruik ik zelf, werkt erg prettig!

download?

-edit-

1e link op google xD

[Laatst bewerkt door Robertenzo op dinsdag 16 oktober 2007, om 19:32]
📫

Nieuw privébericht

🔥

Registreren


Login