הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   [שאלה] איך אני מרוקן תיקיה בשרת? (PHP) (https://hosts.co.il/forums/showthread.php?t=15081)

Homie 05-02-06 00:30

[שאלה] איך אני מרוקן תיקיה בשרת? (PHP)
 
שלום לכל המשתמשים היקרים,

ברצוני לרוקן תיקיה בשרת (להסיר קבצים מתוך התיקיה אך להשאיר את קיומה).

אך אני לא מכיר שום קוד שעושה את הפעולה, אני מתכנת PHP כשנה ועדיין לא נתקבלי בקוד.

אני מכיר את הקודים הבאים:
rmdir - מחיקת תיקיה
unlink - מחיקת קובץ

אבל אם תשימו לב, הקודים לא מרוקנים את התיקיה, אלא מוחקים את התיקיה.

יש לי מערכת העלאת קבצים, ויש לי פאנל ניהול למחיקת תמונה, אך אני לא מצליח ליצור קוד שימחק את כל התיקיה.

תודה מראש לעוזרים, אלי.

Kuchi 05-02-06 00:36

תעשה לולאה שעוברת קובץ קובץ ומוחקת מה הבעיה ?

Homie 05-02-06 00:53

מה הבעיה? הבעיה שזה יקח זמן.

ואני חולק עליך, אני חושב שקיימת אפשרות כזו, ושכמובן לא תיקח זמן ולא תבצע את הפעולה על ידי לולאה שעוברת קובץ קובץ ומוחקת.

נערך: עלה לי רעיון! אולי אני ימחוק את התיקיה ואז יעשה ובדיוק אחרי המחיקה המערכת תיצור תיקיה חדשה ואוטומטית תיתן לה הרשאה 0777. זה אפשרי.

אך איך אני מבצע את זה?

ohadamar 05-02-06 00:58

ציטוט:

נכתב במקור על ידי Homie
מה הבעיה? הבעיה שזה יקח זמן.

ואני חולק עליך, אני חושב שקיימת אפשרות כזו, ושכמובן לא תיקח זמן ולא תבצע את הפעולה על ידי לולאה שעוברת קובץ קובץ ומוחקת.

נערך: עלה לי רעיון! אולי אני ימחוק את התיקיה ואז יעשה ובדיוק אחרי המחיקה המערכת תיצור תיקיה חדשה ואוטומטית תיתן לה הרשאה 0777. זה אפשרי.

אך איך אני מבצע את זה?

איך אתה יודע שזה אפשרי?

Kuchi 05-02-06 00:59

כמו שאמרת תמחק תתיקיה ותיצור חדשה אתה שואל אם זה אפשרי שמהתחלה כתבת שאתה יודע שיש אפשרות כזאת ? אני חולק עליך ! LOL
בכל מקרה מה שהצעתי זה לא איטי זה לא HTML וקבצים זה לא טוען תקובץ ואז מוחק אלוהים אשמור זה לוקח שם של הקובץ מתיקיה וישר מוחק מה הקטע ? אלק איטי חחחחח |טוויסט|

TAsraf 05-02-06 15:05

KuChI-PoChI,אחי הוא רוצה לדעת גם איך לעשות שזה יתן הרשאה 0777 אוטומטית.

בניה 05-02-06 15:18

PHP קוד:

rmdir($dir);
chmod($dir,0777); 


שקד 05-02-06 16:47

ניתן לשנות ההרשאות באמצעות הפונקציה chmod
או כמו בדוגמא ש"בניה" הציג

בהצלחה :)

meshuga 05-02-06 17:08

ציטוט:

נכתב במקור על ידי בניה
PHP קוד:

rmdir($dir);
chmod($dir,0777); 


פונקציית הסרת התקיה לא עובדת לפי מה שאני יודע כשיש קבצים בפנים.....אבל....מה אני זוכר....שנים לא השתמשתי בזה...

Imri 05-02-06 19:40

אולי ,
מחק את התיקיה , וצור אותה מחדש .
ככה תוכנה יימחק .

Tomer 05-02-06 23:28

PHP קוד:

$sys system("rm -rf folder"); 

כמובן בתנאי ש PHP Safe Mode OFF

Homie 05-02-06 23:31

נראה לי שלא הבנתם אותי, אני רק מעוניין לבצע את הפעולות הבאות:

1. מחיקת התיקיה.

2. יצירת תיקיה חדשה אוטומטית לאחר המחיקה.

3. שינוי הרשאות התיקיה אוטומטית ל-0777 לאחר יצירת התיקיה.

Tomer 05-02-06 23:33

ציטוט:

נכתב במקור על ידי Homie
נראה לי שלא הבנתם אותי, אני רק מעוניין לבצע את הפעולות הבאות:

1. מחיקת התיקיה.

2. יצירת תיקיה חדשה אוטומטית לאחר המחיקה.

3. שינוי הרשאות התיקיה אוטומטית ל-0777 לאחר יצירת התיקיה.

במידה ו PHP Safe Mode OFF, בצע את הפעולות הבאות:
PHP קוד:

$sys system("rm -rf folder");
$sys mkdir("folder");
$sys chmod("folder",0777); 

תהנה..

meshuga 05-02-06 23:36

ציטוט:

נכתב במקור על ידי Homie
נראה לי שלא הבנתם אותי, אני רק מעוניין לבצע את הפעולות הבאות:

1. מחיקת התיקיה.

2. יצירת תיקיה חדשה אוטומטית לאחר המחיקה.

3. שינוי הרשאות התיקיה אוטומטית ל-0777 לאחר יצירת התיקיה.

אי אפשר למחוק תקיה כשיש בה קבצים...ציטוט מהאתר של PHP:
rmdir:
"The directory must be empty, and the relevant permissions must permit this."
מה שאומר בתרגום חופשי, צריך שלא יהיה כלום בתקיה ושיהיה הרשאות מתאימות (לתקיית ה"אב").....
מה שאומר שאתה בכל מקרה צריך לרוקן אותה, ואת זה עושים עם לולאה וunlink אין דרך אחרת עם PHP רגיל..(בלי SSH ושטויות כאלה)

Homie 06-02-06 02:41

מה הקוד הבא עושה?:
PHP קוד:

$sys system("rm -rf folder"); 


ohadamar 06-02-06 06:11

ציטוט:

נכתב במקור על ידי Homie
מה הקוד הבא עושה?:
PHP קוד:

$sys system("rm -rf folder"); 


$sys = system("rm -rf folder");

מוחק את התיקיה,
אתה צריך אבל שהשרת יהיה על מצב בטוח

ViPeRt 06-02-06 13:21

ציטוט:

נכתב במקור על ידי ohed
$sys = system("rm -rf folder");

מוחק את התיקיה,
אתה צריך אבל שהשרת יהיה על מצב בטוח

זה לא קשור לשרת...
הוא צריך שהפונקציה של מצב בטוח ב PHP תהיה כבויה.

בניה 06-02-06 14:38

ציטוט:

נכתב במקור על ידי ViPeRt
זה לא קשור לשרת...
הוא צריך שהפונקציה של מצב בטוח ב PHP תהיה כבויה.

בס"ד

הניסוח שלו היה יותר קרוב משלך.
הניסוח הכי נכון הוא שבהגדרות של המנוע PHP בשרת האפשרות של המצב בטוח תהיה מכובה.


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

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