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

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   בעיה עם file_exists (https://hosts.co.il/forums/showthread.php?t=58533)

A.M.F 31-12-07 10:48

בעיה עם file_exists
 
אני בודק אם הקובץ נמצא על השרת בצורה הבאה-
קוד:

if (file_exists($file_name))
                {
                        return "<img src='" . $filename . "' width='" . $width . "' />";
                }

ולמרות שהקובץ נמצא על השרת, זה לא מביא לי שום תוצאות..

AlmogBaku 31-12-07 14:06

תנסה קודם כל בדוגמא יותר מופשטת, עם הדפסה וכו'(כדי להבין אם אין באג למעלה)...
אם לא עזר, בדוק את המחיצה של הקובץ.

reXtea 31-12-07 15:24

מה הקטע בRETURN? זה תנאי... לא פונקציה או משהו... תעשה ECHO או שתכניס את זה לפונקציה.

AlmogBaku 31-12-07 15:43

ציטוט:

נכתב במקור על ידי reXtea (פרסם 596535)
מה הקטע בRETURN? זה תנאי... לא פונקציה או משהו... תעשה ECHO או שתכניס את זה לפונקציה.

מה הקשר?, איך אתה יודע שזה לא חלק מפונקציה?!

daMn 31-12-07 16:00

שים לב שכתבת $filename ולא $file_name
PHP קוד:

if (file_exists($file_name)) 
        {
            return 
"<img src='" $filename "' width='" $width "' />";
        } 


BlueNosE 31-12-07 17:23

ציטוט:

נכתב במקור על ידי reXtea (פרסם 596535)
מה הקטע בRETURN? זה תנאי... לא פונקציה או משהו... תעשה ECHO או שתכניס את זה לפונקציה.

אתה כנראה לא מדבר ממקום של ניסיון או הבנה מלאה של השפה,
כי דף סביר במערכת שלי לא עובדת עם ECHO אחד. יש דף אחד בלבד בשביל ECHO ועוד אחד שיש בו ECHO לAJAX וזהו.

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

דוגמא סבירה? אין לי כוח להמציא כרגע, אבל זה מאוד מאוד שימושי במקרים מסויימים לעבוד עם RETURN.

ד"א
מי אמר לך שזו לא פונקצייה או פונקציית מחלקה?

A.M.F 31-12-07 20:55

ציטוט:

נכתב במקור על ידי daMn (פרסם 596559)
שים לב שכתבת $filename ולא $file_name
PHP קוד:

if (file_exists($file_name)) 
        {
            return 
"<img src='" $filename "' width='" $width "' />";
        } 


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

מה עושים? :-/

mayden 01-01-08 16:17

אתה צריך להגדיר global ל width, הרי זה בתוך פונקציה לא?

Elad-A 01-01-08 16:37

אולי תראה קצת מהקוד לפני הקוד שהבאת?

reXtea 01-01-08 22:11

ציטוט:

נכתב במקור על ידי BlueNosE (פרסם 596607)
אתה כנראה לא מדבר ממקום של ניסיון או הבנה מלאה של השפה,
כי דף סביר במערכת שלי לא עובדת עם ECHO אחד. יש דף אחד בלבד בשביל ECHO ועוד אחד שיש בו ECHO לAJAX וזהו.

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

דוגמא סבירה? אין לי כוח להמציא כרגע, אבל זה מאוד מאוד שימושי במקרים מסויימים לעבוד עם RETURN.

ד"א
מי אמר לך שזו לא פונקצייה או פונקציית מחלקה?

אז זהו,
שאתה לא תגיד לי שאין לי נסיון... ומן הסתם שאני יודע את זה .. אז אל תנסה להסביר לי..
אבל הכוונה שמה הקטע בלעשות סתם RETURN בתנאי IF? אם זה חלק מפונקציה או פונקציית מחלקה אז זה מובן... אבל אוטומטית חשבתי שזאת הבעיה =\

אז תחשוב לפני שאתה חושב שאני לא מבין תחביר בסיסי בשפה..

והאמת שאני עובד רק עם RETURN בסקריפטים שלי...


ולפותח הנושא, במידה וזה לא חלק מפונקציה אז תחליף את הRETURN בכל דבר אחר תכניס למשתנה או משהו...
ובמידה וזה כן חלק מפונקציה אז יש מצב שהבעיה עם בנתיב של $file_name

RS324 02-01-08 14:14

כנראה שהבעיה היא במיקומים.
אתה עושה IF FILEXSIT ואת השם של הקובץ
כלומר שהקובץ של ה PHP והקובץ של התמונה במקרה שלך צריכים להיות באותה תייקיה
יש לי הרגשה שזה לא בדיוק ככה.

A.M.F 02-01-08 16:19

ציטוט:

נכתב במקור על ידי RS324 (פרסם 597120)
כנראה שהבעיה היא במיקומים.
אתה עושה IF FILEXSIT ואת השם של הקובץ
כלומר שהקובץ של ה PHP והקובץ של התמונה במקרה שלך צריכים להיות באותה תייקיה
יש לי הרגשה שזה לא בדיוק ככה.

גם כששמתי את כל הכתובת המלאה של הקובץ זה לא עבד...
בסופו של דבר ניסיתי מיליון ואחת אפשרויות של תיקיות, עד שבסוף הייתי צריך להעביר את התיקייה עם הקבצים שאותם הייתי רוצה לבדוק לרמה אחת מעל לקובץ שבודק אותם ואז זה עבד... לכו תבינו 8-*


תודה בכל מקרה לכל מי שניסה לעזור:-)

BlueNosE 02-01-08 19:00

נו ברור שזה לא עבד כששמת את הכתובת המלאה

As of PHP 5.0.0 this function can also be used with some URL wrappers. Refer to List of Supported Protocols/Wrappers for a listing of which wrappers support stat() family of functionality.

A.M.F 02-01-08 19:11

ציטוט:

נכתב במקור על ידי BlueNosE (פרסם 597228)
נו ברור שזה לא עבד כששמת את הכתובת המלאה

As of PHP 5.0.0 this function can also be used with some URL wrappers. Refer to List of Supported Protocols/Wrappers for a listing of which wrappers support stat() family of functionality.

לא הבנתי מה זה אומר גבר

BlueNosE 02-01-08 20:39

שהפונקציה לכתובות URL פועלת רק בPHP5, ולא עם כל הכתובות URL. רק עם חלקם.


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

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