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

הוסטס - פורום אחסון האתרים הגדול בישראל (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=54623)

חיים 04-10-07 18:43

[PHP]איך לגלות אם קיימת תמונה בשרת אחר?
 
אני רוצה לגלות אם למשל התמונה:
http://mmarket.ru/img/admin_avatar.gif
האם היא קיימת או שהיא נמחקה או כל דבר אחר
יש למישהוא ראיון?דרך?כיוון?
תודה מראש.

Ron | CSite.co.il 04-10-07 19:00

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

Cream 04-10-07 19:15

ftp_nlist לדעתי אם תשתמש ב]ונקיציה הזאת אז זמן טעינת העמוד יעלה לך משמעותית..לא שווה לדעתי להשתמש בזה.

חיים 04-10-07 19:35

ציטוט:

נכתב במקור על ידי Cream (פרסם 562977)
ftp_nlist לדעתי אם תשתמש ב]ונקיציה הזאת אז זמן טעינת העמוד יעלה לך משמעותית..לא שווה לדעתי להשתמש בזה.

זה ברור שלא שווה השאלה היא מה הדרך היותר שווה חח:-D

בניה 04-10-07 19:37

אתה יכול להשתמש בFSOCKOPEN כדי לבקש את התמונה בHTTP ואז לראות אם הקוד תגובה = 200, אם לא היא לא קיימת.

חיים 04-10-07 19:54

ציטוט:

נכתב במקור על ידי בניה (פרסם 562987)
אתה יכול להשתמש בFSOCKOPEN כדי לבקש את התמונה בHTTP ואז לראות אם הקוד תגובה = 200, אם לא היא לא קיימת.

עשיתי אחי אבל הוא מחזיר לי שגיעה מוזרה:
שגיעה מס' 2089866642:
קוד:

Unable to find the socket transport "http" - did you forget to enable it when you configured PHP?

בניה 04-10-07 21:34

תראה איך הם עשו את זה בדוגמאות קוד לפונקציה fsockopen בphp.net

חיים 05-10-07 14:02

ציטוט:

נכתב במקור על ידי בניה (פרסם 563061)
תראה איך הם עשו את זה בדוגמאות קוד לפונקציה fsockopen בphp.net

עשיתי בערך ככה כמו בדוגמה, עשיתי ככה:
PHP קוד:

$fp fsockopen($user->info['avatar'], 80,$errno$errstr30);
 if (!
$fp) {
  echo 
$errno.$errstr;
     
$avatar $user->info['avatar'];
 }else
  
$avatar "images/no_avatar.jpg"

אתה רואה פה שגיעה?טעות?בעיה?

Tomer 05-10-07 14:10

אתה מתחבר ל host (למשל http://www.bla.com/picture.jpg, אזי ש www.bla.com זה ההוסט) ועם fwrite ל $fp אתה עושה GET picture.jpg HTTP 1/1 (משהו כזה) ואם אתה מקבל קוד 200 - אזי התמונה קיימת, אחרת - היא לא.

"אבל לא הבנתי" - תקרא. www.php.net/fsockopen

Striker 05-10-07 17:49

נראה לי שאפשר גם לקבל את הגובה\רוחב של התמונה ואם הם 0 אז היא לא טובה :P


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

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