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

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

satan 23-10-06 13:08

[מדריך PHP] בדיקת מצב של TS
 
במדריך הבא אנו נלמד כיצד אפשר בעזרת קודים בPHP לבדוק את מצבו של השרת, אנחנו ננסה להתחבר לסרבר של הטימספייק בעזרת אייפי ופורט במידה וההתחברות בוצעה בהצלחה אז השרת TS און ליין, במידה וההתחברות נכשלה אז השרת TS נמצא במצב אופליין (לא פעיל).

עכשיו האייפי שלך הוא 127.0.0.1 (שזה localhost) זוהי רק לדוגמא, לשרתי טימספיק יש אייפיים שונים - אם תנסה עם ה-IP הזה אז סביר להניח שזה לא יעבוד לך, זה יעבוד רק בתנאי שהמחשב שלך מפעיל שרת TSעכשיו הפורט הוא בדרך כלל (ברירת המחדל) 51234, אבל לפעמים משנים את הפורט למשהו אחר - לא קשה להשיג את המידע הזה ממנהל האחסון של השרת שלך או משהו כזה.

עכשיו בואו נכנס לתוך קוד PHP ותראו מה קורה פה:

קוד:

<?php
global $errno, $errstr;
$host = "127.0.0.1";
$port = "51234";
$timeout = "36";



בקוד הזה אנחנו מכניסים את הנתונים כאשר HOST יכיל את האייפי והמשתנה PORT יכיל את הפורט של הTS שלנו.

בצורה בקוד הבא תוכלו להבין איך יוצרים את ההתחברות:

קוד:


$socket = fsockopen($host, $port, $errno, $errstr, $timeout);


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

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


קוד:

if (!$socket or fread($socket, 4) != "[TS]")
{
echo "שרת הטימספיק כבוי.";
}
else
{
echo "שרת הטימספיק פעיל!";
}




בביטוי שבמבנה הבקרה IF הראשון אנו בודקים קודם אם המשתנה socket החזיר תשובה שלילית או בנוסף אם fread($socket,4) לא שווה לביטוי [TS] אם אחד מאלו קורה - אז זה אומר שהשרת כבוי, אחרת זה אומר שהוא פעיל.

עכשיו עלינו לסגור את ההתחברות לטימספיק בצורה הבאה:



קוד:

fputs($socket, "quit");
fclose($socket);
?>



עכשיו מה שעליך לעשות הוא לחבר את כל הקודים שנכתבו פה לפי הסדר, להכניס אייפי ופורט של שרת TS שתרצה לבדוק אם הוא פעיל ואולי גם לשלב תקוד באתרך!

מקור המדריך:
http://www.themador.org/view-page-pagenumber-134.htm
עוד בנושא:
http://www.themador.org/catgorys-catid-3.htm

תהנו.

RS324 23-10-06 14:37

לא קראתי את המדריך אבל אין שום סיבה לעשות

PHP קוד:

global $errno$errstr

ועכשיו אחרי שבדקתי את האתר, אני יכול להגיד שכל המדריכים שם הם נמוכים מינוס
לא רמה בכלל

opsite 23-10-06 15:13

תודה .. והמדור המדריכים שם בסיסים מאוד ולא מובנים כל כך .. אבל כל הכבוד תודה..

meshuga 23-10-06 15:50

נחמד, אבל זה קביל על כל IP+PORT, אפשר לבדוק ככה כל דבר, אם זה לבדוק את האפאצ'י, עושים את זה על פורט 80, אם את הFTP על 21 וכו' וכו'
יש סקריפט שמראה לך מי בפנים בדיוק כמו שרואים בטים ספיק..הנה הוא בפעולה:
http://www.sbsil.biz/teamspeak/demo.php

(נלקח מהפורום התמיכה של אתר טים ספיק..)

Ori The Man 23-10-06 19:11

ציטוט:

נכתב במקור על ידי meshuga
נחמד, אבל זה קביל על כל IP+PORT, אפשר לבדוק ככה כל דבר, אם זה לבדוק את האפאצ'י, עושים את זה על פורט 80, אם את הFTP על 21 וכו' וכו'
יש סקריפט שמראה לך מי בפנים בדיוק כמו שרואים בטים ספיק..הנה הוא בפעולה:
http://www.sbsil.biz/teamspeak/demo.php

(נלקח מהפורום התמיכה של אתר טים ספיק..)

איך עושים כזה דבר?

meshuga 23-10-06 19:24

ציטוט:

נכתב במקור על ידי Ori The Man
איך עושים כזה דבר?

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

בקיצור...תחפש.


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

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