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

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

CodeX 12-12-08 15:44

[עזרה] בדיקת קיום עמוד ..
 
שמעו חבר'ה נגיד אני רוצה לבדוק אם נגיד עמוד מסוים קיים ולא קרס, איך אני עושה את זה?

ז"אאני מחפש פונקציה שאני אזין את כתובת האתר, והיא תחזיר TRUE או FALSE במידה והעמוד קיים / לא.

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

אשמח לעזרה!

Erez | TrustMedia.co.il 12-12-08 15:59

תנסה get_file_content זה אמור להחזיר את הקוד HTML של הדף
אז תבדוק אם זה שווה לכלום אז אין את הדף

בניה 12-12-08 16:01

אממ השאלה היא מה קרס?
השרת HTTP?המחשב עצמו?השרת SQL?

Deagly 12-12-08 16:01

אולי הפונקציה הזאת תעזור לך:
file_exists
הפונקציה בודקת אם הקובץ קיים..

CodeX 12-12-08 16:05

אני רוצה לבדוק פשוט אם עמוד מסוים עובד (לדוגמא: http://rapidshare.com/files/118679032/***.rar), ומידה וכן, בלה בלה
ובמידה ולא בלה בלה.

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

vadimg88 12-12-08 16:15

ציטוט:

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

יש המון מדריכים לזה חיפוש קצר בגוגל יתן הרבה תוצאות.

CodeX 12-12-08 16:17

ציטוט:

נכתב במקור על ידי vadimg88 (פרסם 686730)
הפוקציה בודקת אם הקובץ קיים בשרת הנוכחי לא בשרת מרוחק בטוח לא לקובץ שהוא קישור.

יש המון מדריכים לזה חיפוש קצר בגוגל יתן הרבה תוצאות.

תאמת חיפשתי הרבה ולא מצאתי... לכן פניתי לפה..

עריכה

הצלחתי לעשות את זה:
PHP קוד:

<?php
$url 
'http://www.dsadasdle.com';

if(!
get_headers($url)) {

echo 
1;

}

else {

echo 
2;

}

?>

אבל במידה והעמוד לא קיים הוא מציג לי:
ציטוט:

Warning: get_headers() [function.get-headers]: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\wamp\www\1.php on line 4

Warning: get_headers(http://www.dsadasdle.com) [function.get-headers]: failed to open stream: php_network_getaddresses: getaddrinfo failed: No such host is known. in C:\wamp\www\1.php on line 4
1
יענו הוא מחזיר 1 אבל השגיאות הללו, אי אפשר לבטל אותם?

בניה 12-12-08 16:25

ציטוט:

נכתב במקור על ידי vadimg88 (פרסם 686730)
הפוקציה בודקת אם הקובץ קיים בשרת הנוכחי לא בשרת מרוחק בטוח לא לקובץ שהוא קישור.

יש המון מדריכים לזה חיפוש קצר בגוגל יתן הרבה תוצאות.

ציטוט:

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.
זה כן יכול לעבוד גם על URL אם יש בשרת שלך PHP 5,תבדוק את זה.

אם מדובר רק בקובץ HTML אז באמת לבדוק שלא חוזר לך קוד HTTP שונה מ200 מספיק.
אבל אם זה עמוד אחר,אז צריך למצוא משהו יותר אמין.

Shay Ben Moshe 12-12-08 17:06

יש לי שניים שתנסה:
הראשון:
קוד:

$url = "http://url.com";
if (is_file($url))
        {
        // קוד אם קיים
        }
else
        {
        // קוד אם לא קיים
        }


השני:
קוד:

$url = "http://url.com";
if (file($url))
        {
        // קוד אם קיים
        }
else
        {
        // קוד אם לא קיים
        }

בהצלחה

Deagly 12-12-08 17:09

ציטוט:

נכתב במקור על ידי vadimg88 (פרסם 686730)
הפוקציה בודקת אם הקובץ קיים בשרת הנוכחי לא בשרת מרוחק בטוח לא לקובץ שהוא קישור.

יש המון מדריכים לזה חיפוש קצר בגוגל יתן הרבה תוצאות.

אני יודע שזה בודק אם הקובץ קיים רק בשרת הנוכחי..
לזה חשבתי שפותח האשכול התכוון.. הוא לא הסביר את עצמו טוב אז לא הבנתי (:
בכל מקרה חיפוש קצרצר בגוגל מצא לי את התוצאה:
http://www.devscripts.net/browse/53.php
תנסה לבדוק אולי זה יעזור לך ;)


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

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