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

    נפתר הוספת משתנים באופן יזום לבקשה

    פורום PHP
    2
    5
    124
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגיבו כנושא
    התחברו בכדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • S
      soris1989 נערך לאחרונה על ידי soris1989

      כתבתי קוד ב-PHP להתממשקות עם שלוחת ה-API שיצרתי במערכת.
      אני מנסה לשלוח פרמטרים נוספים ל-request באופן דינאמי ויזום בתוך הקוד, ללא שימוש ב-read וב-id_list_message, כך שהפרמטרים הללו יופיעו ב- $_GET.

      ניסיתי לעשות את זה בהתחלה כך:

      echo "re_record_city=2&city=ירושלים";
      

      אך זה לא הצליח.

      נראה לי שהתשובה לכך נמצאת ב"מודול API" בכותרת "פרמטרים קבועים שנשלחים לשרת":
      לדוגמה אם ברצונכם שבכל פנייה לשרת המערכת תצרף את הפרמטרים foo=111 bar=222 יש להגדיר בהגדרות השלוחה

      api_add_0=foo=111
      api_add_1=bar=222
      

      במקרה כזה הבקשה ב-GET תראה כך

      https://example.com/YemotApi?foo=111&bar=222
      

      הבעיה היא שאני לא יודע איך לשלב את זה בקוד PHP.

      שאלה נוספת:
      איך אפשר לשנות ערך פרמטר קיים תוך כדי שימוש ב-read? (מדובר בפרמטר ששונה מהפרמטר של read, ואני מעוניין לשנות את הערך שלו ב-$_GET בצורה יזומה בקוד).
      לדוגמא נניח שכבר קיים הפרמטר foo=1, וכעת אני מעוניין לקלוט באמצעות read את הפרמטר bar, אך תוך כדי הקליטה של bar, אני מעוניין ש-foo ישתנה בצורה יזומה.

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

      צ תגובה 1 תגובה אחרונה תגובה ציטוט 0
      • הנושא סומן כשאלה  S soris1989 
      • צ
        צדיק תמים מומחה @soris1989 נערך לאחרונה על ידי

        @soris1989 לכן אתה צריך להגדיר במפורש שהסשן יהיה לפי פרמטר מזהה השיחה שימות שולחים (ולאפס אותו לפני יציאה מהשלוחה):

        session_id($_GET['ApiCallId']);
        session_start();
        

        קרדיט @amp-Software-0 , אני לא כותב בPHP

        S תגובה 1 תגובה אחרונה תגובה ציטוט 1
        • צ
          צדיק תמים מומחה @soris1989 נערך לאחרונה על ידי

          @soris1989 אתה לא יכול, הגדרת משתנים שרירותית לכל הבקשות זה מראש בהגדרות השלוחה, לא בתשובה שלך המודל api
          נראה לי שמה שאתה מחפש זה סשנים

          S תגובה 1 תגובה אחרונה תגובה ציטוט 0
          • S
            soris1989 @צדיק תמים נערך לאחרונה על ידי soris1989

            @צדיק-תמים אז זהו, ש-session לא יעבוד. למרות שהמידע של ה-session נשמר על השרת המרוחק שבבעלותי, בכל אופן ה-session משתמש ב-cookie כדי לשמור את ה-ID בשם PHPSESSID בצד הלקוח (זה נשמר כעוגיה בדפדפן), ובמעבר בין דפים באתר (או בכל אפליקצית WEB), בזכות העוגיה הזו, הדפדפן דולה את המידע מה-session שבצד השרת ושומר על: data persistency.
            כאן הסיפור הוא שונה, אין כאן דפדפן ששומר את העוגיה הזו, זה נטו צד שרת, ולכן בכל פעם שה-API נטען ה-session נאבד, מפאת העובדה שאין עוגיה ששומרת את ה-PHPSESSID.

            ולכן השתמתי בגישה אחרת מאשר session, השתמשתי במסד נתונים / בקבצים לשמירת הנתונים לאורך הבקשות ב-API.

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

            צ תגובה 1 תגובה אחרונה תגובה ציטוט 0
            • צ
              צדיק תמים מומחה @soris1989 נערך לאחרונה על ידי

              @soris1989 לכן אתה צריך להגדיר במפורש שהסשן יהיה לפי פרמטר מזהה השיחה שימות שולחים (ולאפס אותו לפני יציאה מהשלוחה):

              session_id($_GET['ApiCallId']);
              session_start();
              

              קרדיט @amp-Software-0 , אני לא כותב בPHP

              S תגובה 1 תגובה אחרונה תגובה ציטוט 1
              • S
                soris1989 @צדיק תמים נערך לאחרונה על ידי

                @צדיק-תמים כתב בהוספת משתנים באופן יזום לבקשה:

                session_id($_GET['ApiCallId']);

                תודה רבה,
                זה עזר לי מאוד!!

                תגובה 1 תגובה אחרונה תגובה ציטוט 1
                • הנושא סומן כנפתר  S soris1989 
                • פוסט ראשון
                  פוסט אחרון