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

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

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

nodejs תקינות פונקציה

מתוזמן נעוץ נעול הועבר תכנות
5 פוסטים 2 כותבים 16 צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • E מחובר
    E מחובר
    eido
    כתב נערך לאחרונה על ידי eido
    #1

    האם הפונקציה הזו תקינה? או שחסרים/מיותרים בה דברים?
    gpt מביא רשימה שאני ממש לא מסכים איתה.
    אשמח לשמוע את דעתכם.

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

    export async function addAd(params) {
        let command = [];
        let placeholders = [];
        let values = [];
    
        // מחפש/מפרסם - חובה
        if (params.type && checkType(params.type)) {
        command.push("type");
        placeholders.push("?");
        values.push(params.type);
        }
        else { return { error: "Invalid type" }; }
    
        // מקצוע - חובה
        if (params.profession && checkProfession(params.profession)) {
            command.push(", profession");
            placeholders.push(", ?");
            values.push(params.profession);
        }
        else { return { error: "Invalid profession" }; }
    
        // מינימום/מקסימום מחיר - לא חובה, אבל אם קיים חייב להיות מספר חיובי ושלם
        if (params.price) {
          if (checkNumber(params.price)) {
            command.push((params.type === "מחפש") ? ", max_payment" : ", min_payment");
            placeholders.push(", ?");
            values.push(params.price);
            }
          else { return { error: "Invalid price" }; }
        }
    
        // תדירות צינתוק  - חובה רק במחפש, אסור שיהיה במפרסם
        if (params.type === "מחפש") {
           if (params.ringMode && checkRingMode(params.ringMode)) {
              command.push(", ring_mode");
              placeholders.push(", ?");
              values.push(params.ringMode);
              }
            else { return { error: "Invalid ring mode" }; }
          }
        
        if (params.path) {
            command.push(", recording_path");
            placeholders.push(", ?");
            values.push(params.path);
        }
    
        let connection;
        connection = await mysql.createConnection({ host, user, password, database });
        const [results] = await connection.execute(`INSERT INTO ads (${command.join('')}) VALUES (${placeholders.join('')})`,
            values
        );
    
        // אזור - לא חובה, אבל אם קיים חייב להיות תקין
        if (params.area) {
          if (checkArea(params.area)) {
              const [results1] = await connection.execute(`INSERT INTO ad_cities (ad_id, city) VALUES (?, ?)`,
             [results.insertId, params.area]);
             return results1;
          }
          else { return { error: "Invalid area" }; }
          }
        // עיר - לא חובה, אבל אם קיים חייב להיות תקין 
        else if (params.city) {
          if (Array.isArray(params.city)) {
            for (const city of params.city) {
              if (checkCity(city)) {
                await connection.execute(`INSERT INTO ad_cities (ad_id, city) VALUES (?, ?)`,
                  [results.insertId, city]);
              } 
              else { return { error: `Invalid city: ${city}` }; }
            }
          } 
          } else {const [results1] = await connection.execute(`INSERT INTO ad_cities (ad_id, city) VALUES (?, ?)`,
                [results.insertId, "all"]);
                return results1;
            }
    }
    
    תגובה 1 תגובה אחרונה
    0
    • dovidD מנותק
      dovidD מנותק
      dovid
      ניהול
      כתב נערך לאחרונה על ידי dovid
      #2

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

      • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
      • בכל נושא אפשר ליצור קשר dovid@tchumim.com
      E 2 תגובות תגובה אחרונה
      0
      • dovidD dovid

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

        E מחובר
        E מחובר
        eido
        כתב נערך לאחרונה על ידי
        #3

        @dovid אם זה יועיל

        תגובה 1 תגובה אחרונה
        1
        • dovidD dovid

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

          E מחובר
          E מחובר
          eido
          כתב נערך לאחרונה על ידי eido
          #4

          @dovid האמת שחוץ מאת

          else { return { error: "Invalid type" }; }
          

          ואת החיבור למסד נתונים כתבתי לבד, בלי AI...

          אולי תמקד אותי איפה הבעיה?

          זה לא קוד מורכב מידי, סתם קוד שבודק שהפרמטר קיים -> בודק תקינות -> מוסיף לפקודת הsql.

          איזה חלק פספסתי כאן?

          בעצם, בחלק הזה במה js שונה משאר השפות?

          dovidD תגובה 1 תגובה אחרונה
          0
          • E eido

            @dovid האמת שחוץ מאת

            else { return { error: "Invalid type" }; }
            

            ואת החיבור למסד נתונים כתבתי לבד, בלי AI...

            אולי תמקד אותי איפה הבעיה?

            זה לא קוד מורכב מידי, סתם קוד שבודק שהפרמטר קיים -> בודק תקינות -> מוסיף לפקודת הsql.

            איזה חלק פספסתי כאן?

            בעצם, בחלק הזה במה js שונה משאר השפות?

            dovidD מנותק
            dovidD מנותק
            dovid
            ניהול
            כתב נערך לאחרונה על ידי dovid
            #5

            @eido כתב בnodejs תקינות פונקציה:

            אולי תמקד אותי איפה הבעיה?
            איזה חלק פספסתי כאן?

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

            • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
            • בכל נושא אפשר ליצור קשר dovid@tchumim.com
            תגובה 1 תגובה אחרונה
            0
            • dovidD dovid נעל נושא זה
            תגובה
            • תגובה כנושא
            התחברו כדי לפרסם תגובה
            • מהישן לחדש
            • מהחדש לישן
            • הכי הרבה הצבעות


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

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

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