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

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. ספירת ערכים כפולים בget בphp

ספירת ערכים כפולים בget בphp

מתוזמן נעוץ נעול הועבר תכנות
19 פוסטים 4 כותבים 725 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • nigunN nigun

    @חוקר
    אני התכוונתי לבדוק כמה פעמים זה נשלח
    ככה אם הלקוח טעה ורוצה לתקן הוא מקיש 2 וחוזר להקשה מחדש של כמות הפריטים
    ואז כיוון שהערך item מופיע פעמיים והערך approve רק פעם אחת הוא מקבל שוב את התפריט "לאישור..."
    אם הוא מקיש 1 אז עכשיו גם approve וגם item מופעים פעמיים ואז הוא ממשיך הלאה

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

    בכל מקרה הפתרון הוא אכן QUERY_STRING
    זה מה שכתבתי וזה פתרן לי את הבעיה

    $query_string = $_SERVER['QUERY_STRING'];
    $item_count = substr_count($query_string, 'item=');
    $approve_count = substr_count($query_string, 'approve=');
    
    extract($_GET);
    if (!$item){
      a:
                exit( "read=t-אנא בחר כמות מוצרים    =item,no,1,1,7,No,,,," );
     
    }
     
    if($approve_count<$item_count){
                    exit( "read=t-לאישור הקש אחת לביטול שתיים=approve,no,1,1,7,No,,,,#12*,," );
     
    }
    if($approve==2){
    goto
        a;
    }
    

    אמנם במקרה של הרבה מוצרים ובסוף הקראה של כל המוצרים בסל ואז שאלה של "לאישור ..."
    אז זה יהיה קצת יותר מורכב

    ח
    ח
    חוקר
    כתב ב נערך לאחרונה על ידי
    #9

    @nigun אמר בספירת ערכים כפולים בget בphp:

    אמנם במקרה של הרבה מוצרים ובסוף הקראה של כל המוצרים בסל ואז שאלה של "לאישור ..."
    אז זה יהיה קצת יותר מורכב

    אני הבנתי שזה מה שאתה צריך לכן כתבתי את מה שכתבתי

    תגובה 1 תגובה אחרונה
    0
    • nigunN nigun

      @חוקר
      אני התכוונתי לבדוק כמה פעמים זה נשלח
      ככה אם הלקוח טעה ורוצה לתקן הוא מקיש 2 וחוזר להקשה מחדש של כמות הפריטים
      ואז כיוון שהערך item מופיע פעמיים והערך approve רק פעם אחת הוא מקבל שוב את התפריט "לאישור..."
      אם הוא מקיש 1 אז עכשיו גם approve וגם item מופעים פעמיים ואז הוא ממשיך הלאה

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

      בכל מקרה הפתרון הוא אכן QUERY_STRING
      זה מה שכתבתי וזה פתרן לי את הבעיה

      $query_string = $_SERVER['QUERY_STRING'];
      $item_count = substr_count($query_string, 'item=');
      $approve_count = substr_count($query_string, 'approve=');
      
      extract($_GET);
      if (!$item){
        a:
                  exit( "read=t-אנא בחר כמות מוצרים    =item,no,1,1,7,No,,,," );
       
      }
       
      if($approve_count<$item_count){
                      exit( "read=t-לאישור הקש אחת לביטול שתיים=approve,no,1,1,7,No,,,,#12*,," );
       
      }
      if($approve==2){
      goto
          a;
      }
      

      אמנם במקרה של הרבה מוצרים ובסוף הקראה של כל המוצרים בסל ואז שאלה של "לאישור ..."
      אז זה יהיה קצת יותר מורכב

      WWWW
      WWWW
      WWW
      כתב ב נערך לאחרונה על ידי
      #10

      @nigun אמר בספירת ערכים כפולים בget בphp:

      אבל כאן זה יותר נוח לכתוב גו טו מאשר לכתוב שוב את אותו תפריט או להשתמש בפונקציה כי הוא באמת חוזר אחורה

      אתה אמור להשתמש בלולאה.
      יום אחד תשדרג את ה PHP בשרת, ותצטרך לתקן הרבה קוד...

      WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

      nigunN תגובה 1 תגובה אחרונה
      0
      • WWWW WWW

        @nigun אמר בספירת ערכים כפולים בget בphp:

        אבל כאן זה יותר נוח לכתוב גו טו מאשר לכתוב שוב את אותו תפריט או להשתמש בפונקציה כי הוא באמת חוזר אחורה

        אתה אמור להשתמש בלולאה.
        יום אחד תשדרג את ה PHP בשרת, ותצטרך לתקן הרבה קוד...

        nigunN
        nigunN
        nigun
        כתב ב נערך לאחרונה על ידי
        #11

        @WWW
        איפה אני מכניס כאן לולאה?
        ובאיזה גירסת PHP אני יתקע?

        מייל: nigun@duck.com

        WWWW 2 תגובות תגובה אחרונה
        0
        • nigunN nigun

          @WWW
          איפה אני מכניס כאן לולאה?
          ובאיזה גירסת PHP אני יתקע?

          WWWW
          WWWW
          WWW
          כתב ב נערך לאחרונה על ידי
          #12

          @nigun אמר בספירת ערכים כפולים בget בphp:

          ובאיזה גירסת PHP אני יתקע?

          לא יודע.

          WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

          תגובה 1 תגובה אחרונה
          0
          • nigunN nigun

            @WWW
            איפה אני מכניס כאן לולאה?
            ובאיזה גירסת PHP אני יתקע?

            WWWW
            WWWW
            WWW
            כתב ב נערך לאחרונה על ידי
            #13

            @nigun אמר בספירת ערכים כפולים בget בphp:

            איפה אני מכניס כאן לולאה?

            אין לי כ"כ זמן.

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

            WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

            nigunN תגובה 1 תגובה אחרונה
            1
            • WWWW WWW

              @nigun אמר בספירת ערכים כפולים בget בphp:

              איפה אני מכניס כאן לולאה?

              אין לי כ"כ זמן.

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

              nigunN
              nigunN
              nigun
              כתב ב נערך לאחרונה על ידי
              #14

              @WWW אמר בספירת ערכים כפולים בget בphp:

              אם צריך להגיע לGOTO זה אומר שהקוד לא מתוכנן נכון.

              או שהAPI של ימות לא מתוכנן נכון

              מייל: nigun@duck.com

              WWWW תגובה 1 תגובה אחרונה
              1
              • nigunN nigun

                @WWW אמר בספירת ערכים כפולים בget בphp:

                אם צריך להגיע לGOTO זה אומר שהקוד לא מתוכנן נכון.

                או שהAPI של ימות לא מתוכנן נכון

                WWWW
                WWWW
                WWW
                כתב ב נערך לאחרונה על ידי
                #15

                @nigun אמר בספירת ערכים כפולים בget בphp:

                או שהAPI של ימות לא מתוכנן נכון

                זה ברור! 🙂
                אבל הכוונה שלי היא, שתמיד יש אלטרנטיבה בקוד ל GOTO.

                WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                ח תגובה 1 תגובה אחרונה
                0
                • WWWW WWW

                  @nigun אמר בספירת ערכים כפולים בget בphp:

                  או שהAPI של ימות לא מתוכנן נכון

                  זה ברור! 🙂
                  אבל הכוונה שלי היא, שתמיד יש אלטרנטיבה בקוד ל GOTO.

                  ח
                  ח
                  חוקר
                  כתב ב נערך לאחרונה על ידי
                  #16

                  @WWW אמר בספירת ערכים כפולים בget בphp:

                  זה ברור!

                  "נישט קשה", למה לקטר? אתה היית בונה את זה יותר טוב?
                  אני לא אומר שזה הכי קל לעבוד מולם, אבל כשזה תחליף להתעסקות לבד עם כל הבלאגן של שרת פרטי, ואתה משקיע במוצר שלך ולא בתשתית, זה ממש ממש מצויין.
                  כמובן צריך לתכנן את זה טוב, לבנות פונקציות שעושים את העבודה מול ימות ואז הכל זורם.
                  ולגבי עצם השאלה כאן בפורום אם היה לי יותר זמן וריכוז אולי הייתי מנסה לחשוב על פיתרון, אבל כבר התחלתי את הזמן, והצטבר לי המון עבודה מבין הזמנים שנדחתה עקב שמחה משפחתית, שאין לי כעת את הריכוז, אבל ודאי שאפשר למצוא פיתרון.
                  כיון אחד שאני יכול לזרוק, לעבוד לפי המזהה שיחה בימות שנשלח בURL שערכו ApiCallId, ולשמור בד"ב או במשתנה בשרת (אם זה נוד או משהו בסגנון זה אפשרי, בPHP חייבים לכאורה ד"ב) לשמור מערך של כל המוצרים שכבר נבחרו, וכן מצביע באיזה מספר מוצר הוא אוחז, ובכל שלב לקדם את המצביע למוצר הבא.
                  ובנוסף להוסיף לסקריפט תנאי שאם יש בGET משתנה hangup=yes זה מוחק את המערך של שיחה זו מהד"ב, כדי למנוע הצטברות מיותרת של שורות לא רלוונטיות.

                  WWWW תגובה 1 תגובה אחרונה
                  2
                  • ח חוקר

                    @WWW אמר בספירת ערכים כפולים בget בphp:

                    זה ברור!

                    "נישט קשה", למה לקטר? אתה היית בונה את זה יותר טוב?
                    אני לא אומר שזה הכי קל לעבוד מולם, אבל כשזה תחליף להתעסקות לבד עם כל הבלאגן של שרת פרטי, ואתה משקיע במוצר שלך ולא בתשתית, זה ממש ממש מצויין.
                    כמובן צריך לתכנן את זה טוב, לבנות פונקציות שעושים את העבודה מול ימות ואז הכל זורם.
                    ולגבי עצם השאלה כאן בפורום אם היה לי יותר זמן וריכוז אולי הייתי מנסה לחשוב על פיתרון, אבל כבר התחלתי את הזמן, והצטבר לי המון עבודה מבין הזמנים שנדחתה עקב שמחה משפחתית, שאין לי כעת את הריכוז, אבל ודאי שאפשר למצוא פיתרון.
                    כיון אחד שאני יכול לזרוק, לעבוד לפי המזהה שיחה בימות שנשלח בURL שערכו ApiCallId, ולשמור בד"ב או במשתנה בשרת (אם זה נוד או משהו בסגנון זה אפשרי, בPHP חייבים לכאורה ד"ב) לשמור מערך של כל המוצרים שכבר נבחרו, וכן מצביע באיזה מספר מוצר הוא אוחז, ובכל שלב לקדם את המצביע למוצר הבא.
                    ובנוסף להוסיף לסקריפט תנאי שאם יש בGET משתנה hangup=yes זה מוחק את המערך של שיחה זו מהד"ב, כדי למנוע הצטברות מיותרת של שורות לא רלוונטיות.

                    WWWW
                    WWWW
                    WWW
                    כתב ב נערך לאחרונה על ידי
                    #17

                    @חוקר אמר בספירת ערכים כפולים בget בphp:

                    "נישט קשה", למה לקטר? אתה היית בונה את זה יותר טוב?

                    אמממ... נראה לי שכן.

                    WWW.netfree@gmail.com || קשבק! החזר כספי לבנק על רכישות באינטרנט || עונים על סקרים ומרוויחים כסף!

                    תגובה 1 תגובה אחרונה
                    1
                    • MusiCodeM
                      MusiCodeM
                      MusiCode
                      כתב ב נערך לאחרונה על ידי
                      #18

                      אני חולם לבנות מחלקה (לאו דווקא בשפה ספיציפית),
                      שתפתור את הבעיות האלה, מתחת למכסה המנוע.
                      כמו המחלקות שיש לARI של אסטריסק, שמתחברות בו"ז לווב-סוקט של אסטריסק, ולREST API של אסטריסק.

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

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

                      nigunN תגובה 1 תגובה אחרונה
                      2
                      • MusiCodeM MusiCode

                        אני חולם לבנות מחלקה (לאו דווקא בשפה ספיציפית),
                        שתפתור את הבעיות האלה, מתחת למכסה המנוע.
                        כמו המחלקות שיש לARI של אסטריסק, שמתחברות בו"ז לווב-סוקט של אסטריסק, ולREST API של אסטריסק.

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

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

                        nigunN
                        nigunN
                        nigun
                        כתב ב נערך לאחרונה על ידי
                        #19

                        @MusiCode
                        אתה רוצה לעשות מחלקה לימות או לאסטריסק?

                        מייל: nigun@duck.com

                        תגובה 1 תגובה אחרונה
                        0

                        שלום! נראה שהשיחה הזו מעניינת אותך, אבל עדיין אין לך חשבון.

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

                        בעזרת התרומה שלך, הפוסט הזה יכול להיות אפילו טוב יותר 💗

                        הרשמה התחברות
                        תגובה
                        • תגובה כנושא
                        התחברו כדי לפרסם תגובה
                        • מהישן לחדש
                        • מהחדש לישן
                        • הכי הרבה הצבעות


                        בא תתחבר לדף היומי!
                        • התחברות

                        • אין לך חשבון עדיין? הרשמה

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