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

    נפתר קוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה

    פורום PHP
    7
    83
    2523
    טוען פוסטים נוספים
    • מהישן לחדש
    • מהחדש לישן
    • הכי הרבה הצבעות
    תגובה
    • הגיבו כנושא
    התחברו בכדי לפרסם תגובה
    נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
    • M
      MGM IVR מומחה @יואל נחמיה נערך לאחרונה על ידי

      @יואל-נחמיה

      <?php
      
      $token = $_GET['token'];
      if ($token == null ) {
          print("token is null");
          exit();
      }
      
      $name = $_GET['name'];
      if ($name == null) {
          print("name is null");
          exit();
      }
      
      $newname = $_GET['newname'];
      if ($newname == null) {
          print("newname is null");
          exit();
      }
      
      $what = $_GET['what'];
      if ($what == null) {
          print("what is null");
          exit();
      }
      
      $newwhat = $_GET['newwhat'];
      if ($newwhat == null) {
          print("newwhat is null");
          exit();
      }
      
      
      
      
      $yemot = "https://www.call2all.co.il/ym/api/FileAction?token={$token}&action=copy&what=ivr2:{$what}/{$name}.wav&target=ivr2:{$newwhat}/{$newname}.wav" ;
       
       
      $url1 = file_get_contents($yemot);
      $url = json_decode("$url1", true);
      $status = $url['responseStatus'];
      if ($status == "OK") {
          echo "הקובץ מספר" .  " <br /> " . $name . "נעתק בהצלחה בשם: "  . " <br /> " . $newname ;
      }else{
          echo "$url1";
      }
       
      ?>
      

      זה עובד לי מעולה בשרת הוסטינגר.

      זה בגדול הקוד שהיה כתוב כאן , רק הוספתי לו הודעות שגיאה מתאימות.

      הוא מדפיס את התגובה של ימות אם יש שגיאה

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

        בקיצור... לא עובד...
        האם מישהו יודע יותר על

        file_get_contents()
        

        בוובהוסט?"
        כי נראה שהם לא מאפשרים שימוש ב-file_get_contents() בקוד... יכול להיות?

        M תגובה 1 תגובה אחרונה תגובה ציטוט 0
        • M
          MGM IVR מומחה @יואל נחמיה נערך לאחרונה על ידי

          @יואל-נחמיה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

          בקיצור... לא עובד...
          האם מישהו יודע יותר על

          file_get_contents()
          

          בוובהוסט?"
          כי נראה שהם לא מאפשרים שימוש ב-file_get_contents() בקוד... יכול להיות?

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

          י פ 2 תגובות תגובה אחרונה תגובה ציטוט 0
          • י
            יואל נחמיה @MGM IVR נערך לאחרונה על ידי

            @MGM-IVR כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

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

            הוא מַחזיר תקין
            ??

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

              נראה שגם ל @יהודה-הוצלר-0 היה לו בעיה זו...
              בכתובת הלינק של השרת (הכותרת לא קשור לנושא...) מיום 8 ביוני 2021, 11:25

              @יהודה-הוצלר-0 כתב בכתובת הלינק של השרת:

              זה מה שעשיתי אבל זה עושה לי שקט ומחזיר לתפריט הראשי

              @יוסף-ח כתב בכתובת הלינק של השרת:

              @יהודה-הוצלר-0
              זה רק מודול מתחברות זה לא משהו שאמור לשנות לך משהו....
              תסמן את הנושא כנפתר

              והוא סימנו !
              Screenshot 2023-02-20 164305.png

              אבל @יהודה-הוצלר-0 כתב בכתובת הלינק של השרת:

              זה עושה לי שקט

              ועיינו:

              @BARKOL כתב בכל מודולי ה API של ימות להדגמה:

              if ($str["responseStatus"] === "OK"){
                  echo "id_list_message=t-ההתנתקות בוצעה בהצלחה, ממערכת מספר.d-$ApiDID.&go_to_folder=$FolderLogoutOk";}
              

              בקיצור היה לו לשמוע "ההתנתקות בוצעה בהצלחה, ממערכת מספר---" והוא שמע "NULL" 😉 ואין הנושאScreenshot 2023-02-20 164305.png כלל! למה זה?

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

                @יואל-נחמיה מסובך לעבור על הפוסטים להבין את הבעיה אולי תפרט בקצרה?

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

                  @הלי יש לנו את זה שנערך ע"י החברים היקרים, קוד בעצם פשוט

                  <?php
                  ini_set('display_errors', '1');
                  ini_set('display_startup_errors', '1');
                  error_reporting(E_ALL);
                   
                   
                  //טוקן
                  $token = $_GET['token'];
                  //שם מקור
                  $name = $_GET['name'];
                  //שם יעד
                  $newname = $_GET['newname'];
                  //שלוחת מקור
                  $what = $_GET['what'];
                  //שלוחת היעד
                  $newwhat = $_GET['newwhat'];
                  $yemot = "https://www.call2all.co.il/ym/api/FileAction?token={$token}&action=copy&what=ivr2:{$what}/{$name}.wav&target=ivr2:{$newwhat}/{$newname}.wav" ;
                   
                   
                  $url1 = file_get_contents($yemot);
                  $url = json_decode("$url1", true);
                  $status = $url['responseStatus'];
                  if ($status == "OK") {
                      echo "הקובץ מספר" .  " <br /> " . $name . "נעתק בהצלחה בשם: "  . " <br /> " . $newname ;
                  }else{
                      echo "$url1";
                  }
                   
                  ?>
                   
                   
                  

                  מה שעובד כמעט לכולם כאן
                  ולי (אני משתמש ב 000webhost.com) המענה היא

                  Warning: file_get_contents(...): failed to open stream: Connection timed out in /storage/.../copy.php on line 20
                  
                  ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                  • ש
                    שואל ברצינות @יואל נחמיה נערך לאחרונה על ידי

                    @יואל-נחמיה ניסית להשתמש ב-cUrl במקום?

                    י ה 2 תגובות תגובה אחרונה תגובה ציטוט 0
                    • י
                      יואל נחמיה @שואל ברצינות נערך לאחרונה על ידי

                      @שואל-ברצינות כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

                      @יואל-נחמיה ניסית להשתמש ב-cUrl במקום?

                      איך? ואיפה ?

                      (שכחתי לחזור על עיקר כזה, אני מתחיל.. )

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

                        תנסה בבקשה את הקוד הבא (שינוי קטן) ותעדכן
                        בהצלחה

                        <?php
                        ini_set('display_errors', '1');
                        ini_set('display_startup_errors', '1');
                        error_reporting(E_ALL);
                         
                         
                        //טוקן
                        $token = $_GET['token'];
                        //שם מקור
                        $name = $_GET['name'];
                        //שם יעד
                        $newname = $_GET['newname'];
                        //שלוחת מקור
                        $what = $_GET['what'];
                        //שלוחת היעד
                        $newwhat = $_GET['newwhat'];
                        $yemot = "https://www.call2all.co.il/ym/api/FileAction?token={$token}&action=copy&what=ivr2:{$what}/{$name}.wav&target=ivr2:{$newwhat}/{$newname}.wav" ;
                         
                         
                        $url1= shell_exec("curl '$yemot'");
                        $url = json_decode("$url1", true);
                        $status = $url['responseStatus'];
                        if ($status == "OK") {
                            echo "הקובץ מספר" .  " <br /> " . $name . "נעתק בהצלחה בשם: "  . " <br /> " . $newname ;
                        }else{
                            echo "$url1";
                        }
                         
                        ?>
                        
                        י תגובה 1 תגובה אחרונה תגובה ציטוט 0
                        • י
                          יואל נחמיה @הלי נערך לאחרונה על ידי

                          @הלי אם הבקשה ממני ( @יואל-נחמיה ) ניסיתי והמענה היא:

                          Warning: shell_exec() has been disabled for security reasons in /storage/ssd4/862/20280862/public_html/copy4.php on line 20
                          

                          וובהוסט לא מאפשרים שימוש ב- ;shell_exec()

                          ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                          • פ
                            פיסטוק פרווה מומחה @MGM IVR נערך לאחרונה על ידי פיסטוק פרווה

                            @יואל-נחמיה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

                            בקיצור... לא עובד...
                            האם מישהו יודע יותר על

                            file_get_contents()
                            

                            בוובהוסט?"
                            כי נראה שהם לא מאפשרים שימוש ב-file_get_contents() בקוד... יכול להיות?

                            בגירסת php 8.0 לא נתמך file_get_contents().
                            אבל את הקוד שהבאת בתחילת הנושא בדקתי והוא עובד מעולה, הבעייה שלך כנראה שהקובץ שאתה רוצה להעתיק לא קיים במערכת או שהשלוחה אליה אתה רוצה להעתיק אינה קיימת במערכת או שהקובץ קיים בתיקיית היעד.
                            פשוט תשנה את הקוד לקוד הבא ותכתוב פה מה הפלט שאתה מקבל:

                            <?php
                            $token = $_GET['token'];
                            $name = $_GET['name'];
                            $newname = $_GET['newname'];
                            $yemot = "https://www.call2all.co.il/ym/api/FileAction?token=$token&action=copy&what=ivr2:3/1/$name.wav&target=ivr2:3/1/0/$newname.wav" ;
                             
                            $url = file_get_contents($yemot);
                            $json = json_decode($url,true);
                            $status = $json['responseStatus'];
                            if ($status == "OK") {
                                echo "הקובץ מספר" &  " <br /> " & $name & "נעתק בהצלחה בשם: "  & " <br /> " & $newname ;
                            }else{
                                echo "error"."</br>סטטוס השגיאה הוא:".$url;
                            }
                             
                            ?>
                            
                            י ש 2 תגובות תגובה אחרונה תגובה ציטוט 0
                            • י
                              יואל נחמיה @פיסטוק פרווה נערך לאחרונה על ידי

                              @פיסטוק-פרווה לֹא, כי אין מענה מימות כלל (!)
                              ולגבי הקוד שלך המענה, כמובן היא

                              error
                              סטטוס השגיאה הוא:
                              

                              ועם

                              ini_set('display_errors', '1'); ini_set('display_startup_errors', '1'); error_reporting(E_ALL);

                              Warning: file_get_contents(https://www.call2all.co.il/ym/api/FileAction?token=****&action=copy&what=ivr2:3/1/***.wav&target=ivr2:3/1/0/***.wav): failed to open stream: Connection timed out in /storage/***/public_html/copy.php on line 20
                              error
                              סטטוס השגיאה הוא:
                              

                              אני לא יודע אם 000webhost.com משתמש בגרסה php 8.0. אם כן, מה יכול להחליף את file_get_contents() ??
                              (shell_exec() נעול בוובהוסט כנ"ל)

                              ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                              • A
                                amp Software 0 נערך לאחרונה על ידי amp Software 0

                                @פיסטוק-פרווה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

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

                                זה בעיה בצד השרת שלו ולא ברמת ה API של ימות
                                תראה את השגיאה שהוא מקבל

                                @יואל-נחמיה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

                                Warning: file_get_contents(...): failed to open stream: Connection timed out in /storage/.../copy.php on line 20

                                מצביע על בעיה כל שהיא שיש בתקשורת בין השרת שהוא משתמש, לבין ימות

                                תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                • ש
                                  שואל ברצינות @פיסטוק פרווה נערך לאחרונה על ידי

                                  @פיסטוק-פרווה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

                                  בגירסת php 8.0 לא נתמך file_get_contents().

                                  בתיעוד הרשמי דווקא כתוב שכן
                                  ce1b865f-db90-402d-b67f-e3adf922a831-image.png
                                  אני בעצמי משתמש עם זה ב-PHP 8.2

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

                                    @יואל-נחמיה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

                                    וובהוסט לא מאפשרים שימוש ב- ;shell_exec()

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

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

                                      @יואל-נחמיה כתב בקוד להעתיק קובץ ע"י מספר בלבד : צריך עזרה:

                                      אם כן, מה יכול להחליף את file_get_contents() ??

                                      curl

                                      <?php
                                      
                                      ini_set('display_errors', '1');
                                      ini_set('display_startup_errors', '1');
                                      error_reporting(E_ALL);
                                      
                                      $url = 'https://www.call2all.co.il/ym/api/FileAction';
                                      $query = [
                                          'token' => '0770000000:1234',
                                          'action' => 'copy',
                                          'what' => 'ivr2:3/1/***.wav',
                                          'target' => 'ivr2:3/1/0/***.wav',
                                      ];
                                      
                                      $result = call_API($url, $query); 
                                      var_dump( $result['code'], $result['answer'] );
                                      
                                      function call_API($url, $query = []){
                                          $ch = curl_init();
                                          
                                          if( !empty( $query ) ) $url .= '?'.http_build_query($query);
                                          curl_setopt($ch, CURLOPT_URL, $url);
                                          curl_setopt($ch, CURLOPT_POST, false);
                                          curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
                                          // Receive server response ...
                                          curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                                       
                                          $server_output = curl_exec($ch);
                                       
                                          $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
                                       
                                          curl_close ($ch);
                                          return( ['code' => $http_code, 'answer' => $server_output ] );
                                      }
                                      
                                      י ש 2 תגובות תגובה אחרונה תגובה ציטוט 0
                                      • י
                                        יואל נחמיה @שואל ברצינות נערך לאחרונה על ידי

                                        @שואל-ברצינות המענה:

                                        int(0) bool(false)
                                        

                                        מה זה ?

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

                                          הקוד הבא מכיל ניפוי שגיאות:

                                          <?php
                                           
                                          ini_set('display_errors', '1');
                                          ini_set('display_startup_errors', '1');
                                          error_reporting(E_ALL);
                                           
                                          $url = 'https://www.call2all.co.il/ym/api/FileAction';
                                          $query = [
                                              'token' => '0770000000:1234',
                                              'action' => 'copy',
                                              'what' => 'ivr2:3/1/***.wav',
                                              'target' => 'ivr2:3/1/0/***.wav',
                                          ];
                                           
                                          $result = call_API($url, $query); 
                                          var_dump( $result['code'], $result['answer'], $result['error'] );
                                           
                                          function call_API($url, $query = []){
                                              $ch = curl_init();
                                              
                                              if( !empty( $query ) ) $url .= '?'.http_build_query($query);
                                              curl_setopt($ch, CURLOPT_URL, $url);
                                              curl_setopt($ch, CURLOPT_POST, false);
                                              curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
                                              // Receive server response ...
                                              curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                                           
                                              $server_output = curl_exec($ch);
                                           
                                              if (curl_errno($ch)) {
                                                  $error_msg = curl_error($ch);
                                              }
                                              $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
                                           
                                              curl_close ($ch);
                                              return( ['code' => $http_code, 'answer' => $server_output , 'error' => ( $error_msg ?? 'no errors' )] );
                                          }
                                          
                                          
                                          י תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                          • י
                                            יואל נחמיה @שואל ברצינות נערך לאחרונה על ידי

                                            @שואל-ברצינות בלי

                                            ?>
                                            

                                            ?
                                            אם זה בטעות אתה לא צריך להשיב

                                            י ש 2 תגובות תגובה אחרונה תגובה ציטוט 0
                                            • פוסט ראשון
                                              פוסט אחרון