PHP chat kiírás

Indította Noszferat001, 2015-02-18, 18:33:48

2015-02-18, 18:33:48 Utolsó szerkesztés: 2015-02-18, 22:16:38 Szerző: Noszferat001
Nyisd meg a channelben a CONFIG fájlt és keresd meg ezeket.

adminpage_ip1: localhost
adminpage_ip2: localhost
adminpage_ip3: localhost
adminpage_ip4: localhost

Szerkesszed át erre:

adminpage_ip1: 192.168.1.100   --> persze a szervergép ip címét írjad a helyére...
adminpage_ip2: 192.168.1.100
adminpage_ip3: 192.168.1.100
adminpage_ip4: 192.168.1.100

Töltsd fel a szervergépedre ezt a fájlt pl.: crontab_chat1.php néven.
<?php
$IP 
"192.168.1.100"; //szervered ip címe
$Port "13000"; //szervered portja (ch1 elég)
$Notice "test"; //Üzenet1, amit megszeretnél jeleníttetni
$Notice1 "world"; //Üzenet2, amit megszeretnél jeleníttetni
$Anzahl "1"; //Kiírási szám

$cleantext = array( "€""@""ö""Ö""ä""Ä""ü""Ü");
$replacetext = array( "\x80""\x40""\xF6""\xD6""\xE4""\xC4""\xFC""\xDC");
$Notice str_replace($cleantext$replacetext$Notice);
$Notice1 str_replace($cleantext$replacetext$Notice1);

if(
$IP && $Port && $Notice && $Notice1 && $Anzahl)
{
{
$socket socket_create (AF_INETSOCK_STREAMSOL_TCP);
$result socket_connect ($socket$IP$Port);

$query "\x40SHOWMETHEMONEY\x0A";
$query .= "\x40NOTICE ".$Notice."\x0A";
$query .= "\x40NOTICE ".$Notice1."\x0A";
 
$query_size strlen($query);
$write_res socket_write($socket$query$query_size);
$recv_res socket_recv($socket$output50560);
socket_close($socket);
}
}
?>


tesztelni pedig így tudjátok:   php crontab_chat1.php


Megjegyzés: Ha nincs telepítve a php akkor nem működik.



Ha segítettem akkor egy "+"

Üzenet összefésülés: 2015-02-18, 22:10:18

A létrehozott crontab_chat1.php fájl autómatikus futtatásához nyissátok meg az      etc/crontab nevű fájlt

Itt a sor aljára írjátok be, hogy

*#/30   *   *   *   *   root   /usr/local/bin/php /root/crontab/crontab_chat1.php
Így 30 percenként folyamatosan lefuttatja a php-t a crontab.


A crontab röviden:
Perc   Óra   Nap   Hónap   Év      --> Ezt a *-jelek jelentik benne.


Ahol így van megadva az idő:
*#/30   *   *   *   *      -->Ez azt jelenti hogy 30percenként futtatja le a fájlt.

De ha valaki úgy szeretné megadni például 18:00, 18:20, 18:40-kor fusson le, az így teheti meg.



0 18 * * * root /usr/local/bin/php /root/crontab/crontab_chat1.php [color=green]--> 0 a perc, 18 az óra[/color]
20 18 * * * root /usr/local/bin/php /root/crontab/crontab_chat1.php [color=green]--> 20 a perc, 18 az óra[/color]
40 18 * * * root /usr/local/bin/php /root/crontab/crontab_chat1.php [color=green]--> 40 a perc, 18 az óra[/color]



Az usr/local/bin/php pedig azért kell mert a crontab nem tud ugyan úgy dolgozni mint az ftp... Tehát simán a php parancsot nem tudja önmagának lefuttatni.


Természetesen ha máshova helyezted el a fájlt, akkor a /root/crontab/ elérési útját nevezzétek át.

Eventeket ezzel a php-val tudtok futtatni

<?php
$IP 
"192.168.1.100"; //szervered ip címe
$Port "13000"; //szervered portja (ch1 elég)
$Submit "submit";
$Event "easter_rabbit"; //event indítási neve
$Mode "1"; //aktiválja az eventet...

if($IP && $Port && $Event && $Mode == "0" or $Mode)
{
$socket socket_create (AF_INETSOCK_STREAMSOL_TCP);
$result socket_connect ($socket$IP$Port);

$query "\x40SHOWMETHEMONEY\x0A";
$query .= "\x40EVENT ".$Event." ".$Mode."\x0A";
 
$query_size strlen($query);
$write_res socket_write($socket$query$query_size);
$recv_res socket_recv($socket$output50560);
socket_close($socket);
}
?>


Ez a php script csak elindítja az eventet....
Mentsétek le olyan néven pl nálam:   easter_rabbit_start.php
Csináljatok egy olyan fájlt is, hogy:    easter_rabbit_stop.php

$Mode = "1"; //aktiválja az eventet...
Az event leállításához itt az 1-es számot át kell írni 0-ra.

Természetesen más event is futtatható vele. Csak át kell nevezni az
$Event = "easter_rabbit";
-ban az easter_rabbit-ot pl moon_drop-ra.