• דף הבית
    • אינדקס קישורים
    • פוסטים אחרונים
    • משתמשים
    • חיפוש בהגדרות המתקדמות
    • חיפוש גוגל בפורום
    • ניהול המערכת
    • ניהול המערכת - שרת private
    • הרשמה
    • התחברות

    קוד PHP שהכנתי לקבלת והדפסת הטוקן העדכני של המערכת שלכם.

    מתוזמן נעוץ נעול הועבר פורום מפתחים API
    1 פוסטים 1 כותבים 106 צפיות 1 עוקבים
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • תגובה כנושא
    התחברו כדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • ה מנותק
      הרב
      נערך לאחרונה על ידי הרב

      הכנתי קוד PHP שדרכו אפשר לקבל את הטוקן העדכני למערכת שלכם.
      בקריאה לקוד הוא בודק האם נשמר בשרת שלכם טוקן ב-30 דקות האחרונות.
      אם נשמר הוא מדפיס את הטוקן שנשמר.
      אם לא הוא מקבל טוקן חדש ומדפיס אותו.
      לאחר שהוא מקבל טוקן הוא שומר אותו בשרת שלכם בקובץ בשם token.
      וכן הוא שומר בשרת שלכם בקובץ בשם token_date את התאריך והשעה של יצירת הטוקן, לצורך בדיקה בבקשות הבאות האם עבר 30 דקות מקבלת הטוקן הקודם.
      כמובן שצריך לשנות את מספר המערכת והסיסמה בשורות 3 ו- 5.
      דוגמה לשימוש בקוד לגוגל סקריפט/שיטס כאן.
      זה הקוד:

      <?php
      //מספר המערכת
      $username = "0773137777";
      //סיסמת הניהול
      $password = "123456";
      //כתובת השרת של ימות
      $url = "https://www.call2all.co.il/ym/api/Login?username=" . $username . "&password=" . $password;
      //הקובץ לשמירת הטוקן
      $tokenFile = "token";
      //הקובץ לשמירת התאריך והשעה של העדכון האחרון של הטוקן
      $dateFile = "token_date";
      
      // פונקציה לקבלת טוקן חדש
      function getNewToken($url, $tokenFile, $dateFile) {
          // שליחת בקשת GET
          $curl = curl_init($url);
          curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
          $response = curl_exec($curl);
          curl_close($curl);
      
          // בדיקת תשובה תקינה
          if ($response === false) {
              die("שגיאה בשליחת בקשת GET");
          }
      
          // פענוח תשובה בפורמט JSON
          $data = json_decode($response, true);
      
          // בדיקת פיענוח תקין של JSON
          if (is_null($data)) {
              die("שגיאה בפיענוח תשובה בפורמט JSON");
          }
      
          // שמירת הטוקן ותאריך העדכון
          file_put_contents($tokenFile, $data['token']);
          $now = new DateTime('now', new DateTimeZone('Israel'));
          $dateString = $now->format('Y-m-d H:i:s');
          file_put_contents($dateFile, $dateString);
      
          // הדפסת הטוקן החדש
          echo $data['token'];
      }
      
      // בדיקת האם יש טוקן תקף
      if (file_exists($tokenFile) && file_exists($dateFile)) {
          $lastTokenDate = file_get_contents($dateFile);
          $lastTokenDateTime = new DateTime($lastTokenDate, new DateTimeZone('Israel'));
          $now = new DateTime('now', new DateTimeZone('Israel'));
      
          // חישוב הפרש הזמן בדקות
          $interval = $now->getTimestamp() - $lastTokenDateTime->getTimestamp();
          $minutesPassed = $interval / 60;
      
          // בדיקה האם הטוקן פג תוקף
          if ($minutesPassed >= 30 || !preg_match('/^(?=.*[a-z])(?=.*[A-Z])[a-zA-Z\d]{16}$/', file_get_contents($tokenFile))) {
              getNewToken($url, $tokenFile, $dateFile);
          } else {
              echo file_get_contents($tokenFile);
          }
      } else {
          // קבלת טוקן חדש אם אין קבצים קיימים
          getNewToken($url, $tokenFile, $dateFile);
      }
      ?>
      
      תגובה 1 תגובה אחרונה תגובה ציטוט 1
      • ה הרב מחק נושא זה ב
      • ה הרב שחזר נושא זה ב
      • פוסט ראשון
        פוסט אחרון