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

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

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

עזרה בפונקציית תרגום בPHP

מתוזמן נעוץ נעול הועבר ארכיון code613m
31 פוסטים 3 כותבים 2.1k צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • שואףש מנותק
    שואףש מנותק
    שואף
    כתב ב נערך לאחרונה על ידי
    #11

    זה מה שעשיתי.. הנ"ל הוא מה שהשרת מחזיר לי

    פורסם במקור בפורום CODE613 ב08/12/2017 11:52 (+02:00)

    ליצירת קשר: admin@i-call.me

    הידד! גישה למייל גם בלי מחשב ואינטרנט!

    תגובה 1 תגובה אחרונה
    0
    • dovidD מנותק
      dovidD מנותק
      dovid ניהול
      כתב ב נערך לאחרונה על ידי
      #12

      @mat

      תעתיק לפה את מה שיוצא לך.

      @JosephA

      זה מה שעשיתי.. הנ"ל הוא מה שהשרת מחזיר לי

      הוא מתכוון כנראה על האיקסים.

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

      פורסם במקור בפורום CODE613 ב08/12/2017 11:58 (+02:00)

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      תגובה 1 תגובה אחרונה
      1
      • שואףש מנותק
        שואףש מנותק
        שואף
        כתב ב נערך לאחרונה על ידי
        #13

        איך אתה × × × × × × '× × × ×

        פורסם במקור בפורום CODE613 ב08/12/2017 12:00 (+02:00)

        ליצירת קשר: admin@i-call.me

        הידד! גישה למייל גם בלי מחשב ואינטרנט!

        תגובה 1 תגובה אחרונה
        0
        • M מנותק
          M מנותק
          magicode
          כתב ב נערך לאחרונה על ידי
          #14

          זה קידוד UTF8 שהדפדפן מציג אותו כ ASCII.
          כנראה שהוא לא מקבל את המסר מה header אין לי מושג למה.

          פורסם במקור בפורום CODE613 ב08/12/2017 12:05 (+02:00)

          תגובה 1 תגובה אחרונה
          1
          • M מנותק
            M מנותק
            magicode
            כתב ב נערך לאחרונה על ידי
            #15

            "איך אתה" זה גם חלק ממה שחוזר?
            אם כן אז זה בעיה בשליחה שלך לגוגל.

            תעשה את זה

            echo urlencode('how are you הכל בסדר');
            

            תעדכן מה יוצא.

            פורסם במקור בפורום CODE613 ב08/12/2017 12:35 (+02:00)

            תגובה 1 תגובה אחרונה
            2
            • M מנותק
              M מנותק
              magicode
              כתב ב נערך לאחרונה על ידי
              #16

              ככה אמור לצאת
              http://sandbox.onlinephpfunctions.com/code/149ecc357f24297c7b4fbe94630162f7e9b3d975

              פורסם במקור בפורום CODE613 ב08/12/2017 12:39 (+02:00)

              תגובה 1 תגובה אחרונה
              0
              • שואףש מנותק
                שואףש מנותק
                שואף
                כתב ב נערך לאחרונה על ידי
                #17

                שום דבר לא עוזר.
                הURLENCODE כבר כתוב בקוד, לא צריך לעשות אותו שוב
                זה כל כך מוזר כי כשאני כותב בדפדפן ישירות את הURL זה כן מחזיר תשובה תקינה, אבל הפונקציה לא עובדת

                כתבתי שוב את הפונקציה, יותר קצר וברור

                <?php
                function translate($text) {
                    $API_translate = 'https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=he&dt=t&q=';
                	$url = $API_translate . urlencode($text);
                    $translate = file_get_contents($url);
                	$text = json_decode($translate);
                    foreach($text[0] AS $t) {
                        $return .= $t[0];
                    }
                    return $return;
                } 
                
                header('Content-Type: text/html; charset=utf-8');
                echo translate(('how are you הכל בסדר'));
                

                פורסם במקור בפורום CODE613 ב10/12/2017 12:07 (+02:00)

                ליצירת קשר: admin@i-call.me

                הידד! גישה למייל גם בלי מחשב ואינטרנט!

                תגובה 1 תגובה אחרונה
                0
                • שואףש מנותק
                  שואףש מנותק
                  שואף
                  כתב ב נערך לאחרונה על ידי
                  #18

                  כנראה שזה באמת בעייה בגוגל, גם בתוסף שלהם לכרום יש את הבעייה הזו, הוא לא מסוגל "לתרגם" עברית לעברית. אם מבקשים ממנו לתרגם טקסט שמורכב מעברית ואנגלית, למשל "how are you אני עייף", הוא לא מתרגם כלום. כנראה בגלל הבעייה הזו.

                  פורסם במקור בפורום CODE613 ב10/12/2017 12:33 (+02:00)

                  ליצירת קשר: admin@i-call.me

                  הידד! גישה למייל גם בלי מחשב ואינטרנט!

                  תגובה 1 תגובה אחרונה
                  0
                  • dovidD מנותק
                    dovidD מנותק
                    dovid ניהול
                    כתב ב נערך לאחרונה על ידי
                    #19

                    אין שום בעיה בגוגל. אצלי זה מחזיר:
                    [[["how are you אני עייף","how are you אני עייף",null,null,0]],null,"iw",null,null,null,1,null,[["iw"],null,[1],["iw"]]]
                    אכן לא מתרגם, אבל לא מחזיר איקסים.

                    בקשו ממך לנסות את הפלט של הurlencode. מה היה קורה אם היית מנסה?
                    שים לפני הגישה פשוט
                    echo $url
                    ונראה את כל התשובות האם הבעיה בגוגל או בקידוד.

                    פורסם במקור בפורום CODE613 ב10/12/2017 12:53 (+02:00)

                    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                    בכל נושא אפשר ליצור קשר dovid@tchumim.com

                    תגובה 1 תגובה אחרונה
                    0
                    • שואףש מנותק
                      שואףש מנותק
                      שואף
                      כתב ב נערך לאחרונה על ידי
                      #20

                      תודה על העזרה הבלתי נילאת!!
                      הecho url מחזיר את זה

                      https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=he&dt=t&q=how+are+you+הכל+בסדר

                      זה תקין לגמרי

                      משום מה, בשלב מסוים של הPHP זה הופך לאיקסים..

                      פורסם במקור בפורום CODE613 ב10/12/2017 13:03 (+02:00)

                      ליצירת קשר: admin@i-call.me

                      הידד! גישה למייל גם בלי מחשב ואינטרנט!

                      תגובה 1 תגובה אחרונה
                      0
                      • שואףש מנותק
                        שואףש מנותק
                        שואף
                        כתב ב נערך לאחרונה על ידי
                        #21

                        ושים לב שכן שמתי את הURLENCODE, כבר מהפוסט הראשון
                        תראה בשורה הזו:
                        $url = $API_translate . urlencode($text);

                        פורסם במקור בפורום CODE613 ב10/12/2017 13:04 (+02:00)

                        ליצירת קשר: admin@i-call.me

                        הידד! גישה למייל גם בלי מחשב ואינטרנט!

                        תגובה 1 תגובה אחרונה
                        0
                        • dovidD מנותק
                          dovidD מנותק
                          dovid ניהול
                          כתב ב נערך לאחרונה על ידי
                          #22

                          הופה אתה צודק!
                          https://translate.googleapis.com/translate_a/single?client=gtx&sl=auto&tl=he&dt=t&q=how are you אני עייף
                          מחזיר
                          [[["איך אתה × × × × × × × ™ × £","how are you × × ×™ ×¢×™×™×£",null,null,3]],null,"en",null,null,null,1,null,[["en"],null,[1],["en"]]]

                          פורסם במקור בפורום CODE613 ב10/12/2017 13:05 (+02:00)

                          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                          בכל נושא אפשר ליצור קשר dovid@tchumim.com

                          תגובה 1 תגובה אחרונה
                          0
                          • dovidD מנותק
                            dovidD מנותק
                            dovid ניהול
                            כתב ב נערך לאחרונה על ידי
                            #23

                            @JosephA

                            ושים לב שכן שמתי את הURLENCODE, כבר מהפוסט הראשון
                            תראה בשורה הזו:
                            $url = $API_translate . urlencode($text);

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

                            פורסם במקור בפורום CODE613 ב10/12/2017 13:06 (+02:00)

                            מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                            בכל נושא אפשר ליצור קשר dovid@tchumim.com

                            תגובה 1 תגובה אחרונה
                            0
                            • dovidD מנותק
                              dovidD מנותק
                              dovid ניהול
                              כתב ב נערך לאחרונה על ידי
                              #24

                              גיליתי שהבעיה נפתרת אם יש user-agent.
                              תגדיר User-Agent: Mozilla/5.0
                              וזה יעבוד.

                              פורסם במקור בפורום CODE613 ב10/12/2017 13:50 (+02:00)

                              מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                              בכל נושא אפשר ליצור קשר dovid@tchumim.com

                              תגובה 1 תגובה אחרונה
                              0
                              • dovidD מנותק
                                dovidD מנותק
                                dovid ניהול
                                כתב ב נערך לאחרונה על ידי
                                #25

                                נראה לי עושים ככה:

                                $options = array(
                                  'http'=>array(
                                    'method'=>"GET",
                                    'header'=> "User-Agent: Mozilla/5.0"
                                  )
                                );
                                
                                $context = stream_context_create($options);
                                
                                $translate = file_get_contents($url);
                                

                                פורסם במקור בפורום CODE613 ב10/12/2017 13:53 (+02:00)

                                מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                תגובה 1 תגובה אחרונה
                                0
                                • שואףש מנותק
                                  שואףש מנותק
                                  שואף
                                  כתב ב נערך לאחרונה על ידי
                                  #26

                                  למשיך לשגע את הלב הטוב שלך או לא?

                                  אכן עכשיו כבר אין איקסים, אבל זה מחזיר את הטקסט המקורי, לא מתורגם בכלל.
                                  שלחתי לתירגום: "how are you אני עייף" וזה בדיוק מה שחזר. מה שאין כן מקודם, לפני השורה הזו, לפחות תירגם לי את האנגלית, והעברית הפכה לאיקסים.

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

                                  פורסם במקור בפורום CODE613 ב10/12/2017 17:17 (+02:00)

                                  ליצירת קשר: admin@i-call.me

                                  הידד! גישה למייל גם בלי מחשב ואינטרנט!

                                  תגובה 1 תגובה אחרונה
                                  0
                                  • dovidD מנותק
                                    dovidD מנותק
                                    dovid ניהול
                                    כתב ב נערך לאחרונה על ידי
                                    #27

                                    זה ודאי התנהגות של גוגל.
                                    תוכל לפרט למה אתה משתמש בזה?
                                    כי יכולים להיות לי רעיונות טובים תלוי במטרה.

                                    פורסם במקור בפורום CODE613 ב10/12/2017 17:34 (+02:00)

                                    מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                    בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                    תגובה 1 תגובה אחרונה
                                    0
                                    • שואףש מנותק
                                      שואףש מנותק
                                      שואף
                                      כתב ב נערך לאחרונה על ידי
                                      #28

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

                                      פורסם במקור בפורום CODE613 ב10/12/2017 17:47 (+02:00)

                                      ליצירת קשר: admin@i-call.me

                                      הידד! גישה למייל גם בלי מחשב ואינטרנט!

                                      תגובה 1 תגובה אחרונה
                                      0
                                      • dovidD מנותק
                                        dovidD מנותק
                                        dovid ניהול
                                        כתב ב נערך לאחרונה על ידי
                                        #29

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

                                        אפשרות שניה זה להמשיך עם הטריק של הapi של התוסף, ולפצל את הטקסט לקטעי אנגלית רצופים.
                                        הנה דוגמה https://regex101.com/r/AmLtMi/1
                                        הקוד צריך להיראות בסגנון:

                                        preg_replace_callback('/\b[^א-ת]{3,}\b/', function($match) {
                                               $url = $API_translate . urlencode($match[0]);
                                               $translate = file_get_contents($url);
                                               ...
                                               return $return;
                                            );
                                        }, $text);
                                        

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

                                        פורסם במקור בפורום CODE613 ב10/12/2017 21:01 (+02:00)

                                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                                        תגובה 1 תגובה אחרונה
                                        0
                                        • שואףש מנותק
                                          שואףש מנותק
                                          שואף
                                          כתב ב נערך לאחרונה על ידי
                                          #30

                                          ייתכן ששווה לשלם, אבל אתה יודע אם שמה אין את הבעייה הזו?

                                          פורסם במקור בפורום CODE613 ב10/12/2017 21:28 (+02:00)

                                          ליצירת קשר: admin@i-call.me

                                          הידד! גישה למייל גם בלי מחשב ואינטרנט!

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

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

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

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