הרשם שאלות ותשובות רשימת חברים לוח שנה הודעות מהיום

חזור   הוסטס - פורום אחסון האתרים הגדול בישראל > עיצוב גראפי, תכנות על כל שפותיו וקידום ושיווק אתרים > פורום תיכנות

   
|!|

השב
 
כלים לאשכול תצורת הצגה
ישן 12-05-06, 10:54   # 1
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

מחלקה למחיקת קבצים ותקיות ושינוי הרשאות דרך FTP

ב"ה


מכיוון שבהרבה שרתים הפוקנציה unlink עושה בעיות ועם הפוקנציה chmod אי אפשר לתת הרשאת 777 והפונקציות FTP של PHP לא כלולות במנוע אז כתבתי את המחלקה הזו:
PHP קוד:
<?php
class ftp {
function 
connect($server,$username,$password,$port=21,$timeout=15)
    {
    if(
$this->connection=fsockopen($server,$port,$errno,$errstr,$timeout))
        {
        
fgets($this->connection);
        
fwrite($this->connection,"USER ".$username."\r\n");
        
fgets($this->connection);
        
fwrite($this->connection,"PASS ".$password."\r\n");
        if(
substr(fgets($this->connection),0,3)=='230')
            {
            return 
true;
            }
        else
            {
            
$this->error="Login incorrect";
            return 
false;
            }
        }
    else
        {
        
$this->error=$errstr;
        return 
false;
        }
    }
function 
deletef($filepath)
    {
     
fwrite($this->connection,"DELE ".$filepath."\r\n");
     
$response=fgets($this->connection);
     if(
substr($response,0,3)=='230')
         return 
true;
     else
         {
        
$this->error=$response;
        return 
false;
        }
    }
function 
removedir($dirpath)
    {
    
fwrite($this->connection,"RMD ".$dirpath."\r\n");
    
$response=fgets($this->connection);
    if(
substr($response,0,3)=='250')
        return 
true;
    else
        {
        
$this->error=$response;
        return 
false;
        }
    }
function 
chmod($path,$prem)
    {
    
fwrite($this->connection,"SITE CHMOD ".$prem." ".$path."\r\n");
    
$response=fgets($this->connection);
    if(
substr($response,0,3)=='200')
        return 
true;
    else
        {
        
$this->error=$response;
        return 
false;
        }
    }
function 
disconnect()
    {
    return 
fclose($this->connection);
    }
}
?>
תיעוד:
הפונקציה connect מקבלת את כתובת השרת,שם המשתמש והסיסמא ומחזירה true אם חיבור נוצר וfalse אם לא והמשתנה
קוד:
$ftp->error;
מכיל את השגיאה.
דוגמא לחיבור:
PHP קוד:
$ftp=new ftp();
$ftp->connect("hosts.co.il","admin","XXXX"); 
הפונקציה deletef מוחקת קובץ. היא מקבלת את הנתיב של הקובץ בFTP.
דוגמא:

הנתיב לקובץ dir.php יהיה
קוד:
/public_html/dir.php
ומוחקים אותו ככה:
PHP קוד:
ftp->deletef("/public_html/dir.php"); 
אם הקובץ נמחק הפוקנציה תחזיר true, אם לא היא תחזיר false והמשתנה$ftp->error יכיל את השגיאה.

הפונקציה removedir מוחקת תקייה והיא מקבלת את נתיב התקייה (כמו בדוגמא של המחיקת קובץ) ומחזירה true אם התקייה נמחקת וfalse אם יש שגיאה והמשתנה $ftp->error יכיל את השגיאה.
דוגמא:
PHP קוד:
$ftp->removedir("/public_html/"); 
הפונציה chmod משנה את ההרשאה לקובץ/תקייה. היא מקבלת את נתיב הקובץ/תקייה ואת מספר ההרשאה שרוצים לתת לקובץ/תקייה.
דוגמא:
PHP קוד:
$ftp->chmod("/public_html/dir.php","777"); 
ולסיום הפונקציה disconnect היא סוגרת את החיבור עם השרת FTP (לא חובה להשתמש בה)
דוגמא לשימוש:
PHP קוד:
$ftp->disconnect(); 
- - - - - - - - - - - - - - - - - - - - - - - - -
אני מקווה בעתיד להוסיף עוד פונקציות שימושיות. אם יש לכן רעיונות לשיפור והוספות אז בבקשה תכתבו.
  Reply With Quote
ישן 12-05-06, 11:48   # 2
-VladK-
הוסטסניון
 
-VladK-'s Avatar
 
מיני פרופיל
תאריך הצטרפות: Apr 2006
גיל: 34
הודעות: 2,182

-VladK- לא מחובר  

פששש תודה רבה רבה לך! חיפשתי את זה לא מזמן!!! טנקס!
  Reply With Quote
ישן 12-05-06, 12:46   # 3
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

בונה משקיע
באמת כל הכבוד.

אם משתמשים צריך לשים זכויות?

עריכה:
ראיתי שאתה משתמש בRAW, מאיפה לומדים את הפונקציות?
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 12-05-06, 12:58   # 4
The Crow
חבר בקהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: קריית אונו
גיל: 36
הודעות: 181
שלח הודעה באמצעות MSN אל The Crow

The Crow לא מחובר  

http://il.php.net/ftp
  Reply With Quote
ישן 12-05-06, 13:12   # 5
BlueNosE
אין כמו ב127.0.0.1
 
BlueNosE's Avatar
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: כפ"ס
גיל: 32
הודעות: 4,086

BlueNosE לא מחובר  

תודה, אבל שאלתי על השימוש בRAW, למדתי לשלב FTP עם PHP, אבל לא עבדתי אף פעם עם RAW.
או שזה פשוט למידה מתוך הFLASHFXP?
__________________
עומר,
admin [@] rely.co.il

בניית אתרים Rely

סלנג מילון סלנג utter
  Reply With Quote
ישן 12-05-06, 13:21   # 6
בניה
משתמש - היכל התהילה
 
מיני פרופיל
תאריך הצטרפות: Oct 2005
מיקום: נחושה
הודעות: 3,434

בניה לא מחובר  

ב"ה

מה זה RAW?
קראתי ממקומות כמו זה:
http://www.w3.org/Protocols/rfc959/
וגם הFLASHFXP כותב את הפקודות כמו שהוא השתמש בהן אז ככה למדתי איך בדיוק משתמשים בזה וזה לא מסובך בכלל.
ולא צריך לשים זכויות.

Last edited by בניה; 12-05-06 at 13:24..
  Reply With Quote
השב

חברים פעילים הצופים באשכול זה: 1 (0 חברים ו- 1 אורחים)
 


חוקי פירסום
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is מופעל
סמיילים הם מופעל
[IMG] קוד מופעל
קוד HTML מכובה

קפיצה לפורום


כל הזמנים הם GMT +2. הזמן כעת הוא 17:27.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ