Szerző Téma: FTP Plugin, FTP csatlakozáshoz :D  (Megtekintve 1656 alkalommal)

FTP Plugin, FTP csatlakozáshoz :D
« Dátum: 2013. augusztus 21. - 15:55:05 »
+4 Show voters
Sziasztok :)
Hivatalos fórumon találtam egy plugint, programom fejlesztése közben, és mivel nekem sokat segített, gondoltam megosztom ezt veletek..
Az eredeti készítõ: Scottas
Ez a plugin, az \"FTP\" névre hallgat, mely (a nevébe is benne van) FTP csatlakozáshoz kell.. ez jól jöhet pl a script fájljaink mentésére...
Forwardok:



forward OnFtpFileSent ( remotefile [ ], localfile [ ] );
forward OnFtpFileReceived ( remotefile [ ], localfile [ ] );

 

Funkciók:



native Ftp_Connect(server[], username[], password[]);  //Csatlakozás
native Ftp_CreateDirectory(directory[]); //Mappa készítés
native Ftp_DeleteFile(file[]); //Fájl törlése
native Ftp_GetFile(remote_file[],local_file[],bool:owerwrite); //Fájl lekérése
native Ftp_PutFile(remote_file[],local_file[]); //Fájl feltöltése
native Ftp_RemoveDirectory(directory[]); //Mappa törlése
native Ftp_RenameFile(file_name[],new_file_name[]); //Fájl nevének átírása
native Ftp_Close(/*Nincs paraméter*/); //FTP csatlakozás leállítása..
native Ftp_OpenFile(file[],access); //Fájl megnyitása
native Ftp_ReadFile(handle,buff[],size=sizeof(buff)); //Fájl megnyitása olvasásra
native Ftp_WriteFile(handle,string[],size=sizeof(string)); //Írás fájlba
native Ftp_CloseFile(handle); //Fájl bezárása..
native Ftp_FileExists(file[]); //Fájl lekérése, hogy fent van-e..



Példa:



public OnGameModeInit ( )
{
    new
        var;
    // FTP csatlakozás..
    var = Ftp_Connect ( \"serverip\", \"username\", \"password\" );
    if ( !var )
        print ( \"_::FTP Error: Nem sikerült csatlakozni az adatbázisra...\" );
    //  \"Gyökér\" mappa készítése.. (ez nem szükséges, csak akkor, ha teljesen üres az FTP-nk)
    var = Ftp_CreateDirectory ( \"Dir\" );
    if ( !var )
        print ( \"::__ FTP Connection: Nem sikerült a mappa létrehozása..\" );
       
    //  Mappa készítése, a \"Gyökér\" mappába..
    Ftp_CreateDirectory ( \"Dir/New\" );
   
    //  Fájl megnyitása
    var = Ftp_OpenFile ( \"Dir/New/newfile.txt\", FTP_WRITE );
    Ftp_WriteFile ( var, \"Elsõ sor\\n\" );
    Ftp_WriteFile ( var, \"Második sor\\n\" );
    //(Használd a \\n, parancsot, új sor kezdéséhez,
   //vagy a \\r  parancsot, bekezdés készítéséhez!)
/* Érdemes elolvasni ezt: http://wiki.sa-mp.com/wiki/File_Functions  */
    //  Fájl bezárása..
    Ftp_CloseFile ( var );
   
    //  Most, egy letöltési példát nézzünk...
    //  Infó: remote_file[] - a létezõ fájl a szerverünkön
    //  Infó2: local_file[] - ahová szeretnénk letölteni a fájlt..
    var = Ftp_GetFile ( \"Dir/New/newfile.txt\", \"scriptfiles/ournewfile.txt\", true );   //A Gyökéren belül, a New mappából, a \"newfile.txt\" letöltése, a \"scriptfiles/ournewfile.txt\"-be
    // Megjegyzés: A parancs végén, ha a \"True\" parancsot adjuk ki,
    //  akkor ha a fájlunk már létezik a letölteni kívánt helyen, felül lesz írva!
    //  Példa: Ha már létezik az \"ournewfile.txt\" és a parancs vége \"True\" akkor letöltéskor,
   //   a script, felül fogja azt írni..
   
    if  ( var )
        print ( \"A fájl letöltve\" );
   
    //  Egy példa, fájl törlésére..
    var = Ftp_DeleteFile ( \"Dir/New/newfile.txt\" );
   //ezzel, a gyökérmappán belüli \"new\" mappából töröljük, a \"newfile.txt\"-t :)
   
    if ( var )
        print ( \"Sikeresen törölve!\" );
       
    //  Töröljük a \"new\" mappát, a gyökérbõl..
    var = Ftp_RemoveDirectory ( \"Dir/New\" );
   
    if ( var )
        print ( \"Sikeresen törölve...\" );
       
    //  A törlés után, most tölltsünk is fel valamit..
    var = Ftp_PutFile ( \"Dir/uploaded_file.txt\", \"pawno/include/ftp.inc\" );
/* Az elsõ idézõ jelek közé, a cél mappa, valamint fájl kerül, a második közé pedig a feltölteni
kívánt fájlunk.. esetünkben, az FTP-nk gyökér mappájába töltjük fel, \"uploaded_file.txt\" néven, a pawno/include mappánkból, az FTP-inc-et ...*/
   
    if ( var )
        print ( \"A fájl sikeresen feltöltve\" );
       
    // Most nyissunk meg egy fájlt, de csak olvasásra!
    var = Ftp_OpenFile ( \"Dir/uploaded_file.txt\", FTP_READ );
   
    new
        line    [ 100 ]; //Egy változó, mely a sorokat jelöli
    //  Olvassunk is belõle, ha már megnyitottuk ;)     
    while ( Ftp_ReadFile ( var, line ) )
        print ( line ); //Majd írjuk ki, a kiolvasott adatokat...
       
    //  Végül, zárjuk be a fájlt..
    Ftp_CloseFile ( var );
   
    //  Az egésznek a végén pedig töröljük a csatlakozást, vagyis zárjuk be az FTP-t...
    Ftp_Close ( );
}

 

Ha valami nem tiszta, írjatok :)

Callbackek:



forward OnFtpFileSent ( remotefile [ ], localfile [ ] );
forward OnFtpFileReceived ( remotefile [ ], localfile [ ] );

 

Bugok:

Jelenleg nincs ..

Készítõk:

RyDeR, angol leírás készítése..

Bloody, magyar leírás készítése..

Pghpunkid, segítség a callback-ben..

Scottas plugin készítõ..



Letöltés itt!
« Utoljára szerkesztve: 2013. augusztus 21. - 16:03:44 írta Bloody44 »

FTP Plugin, FTP csatlakozáshoz :D
« Válasz #1 Dátum: 2013. augusztus 21. - 20:13:13 »
0 Show voters
Hasznos! +

FTP Plugin, FTP csatlakozáshoz :D
« Válasz #2 Dátum: 2013. augusztus 22. - 10:06:50 »
0 Show voters
Idézetet írta: Pajd Tamás date=1377108793\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"41649\" data-ipsquote-contentclass=\"forums_Topic
Hasznos! +
 
Köszönöm :)

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal