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

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

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

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

      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
                        • י
                          יואל נחמיה @יואל נחמיה נערך לאחרונה על ידי

                          @יואל-נחמיה
                          😕

                          int(0) bool(false) string(62) " Failed connect to www.call2all.co.il:443;connection timed out"

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

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

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

                            ?>
                            

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

                            זה מיותר במקרה הזה, צריך את זה רק כאשר אתה משלב קוד PHP בתוך קובץ HTML

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

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

                              @יואל-נחמיה
                              😕

                              int(0) bool(false) string(62) " Failed connect to www.call2all.co.il:443;connection timed out"

                              יתכן שמדובר בקובץ כבד?
                              כמה שוקל הקובץ המדובר שאתה מנסה להעביר?

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

                                @שואל-ברצינות דקה...

                                אבל כשחיפשתי את זה, גיליתי שב- 000webhost.com, אתה מקבל על מה שאתה משלם ...(התכוונתי ל החינמית...)
                                הכל 'ייתכן' שנחסם...

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

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

                                  @שואל-ברצינות דקה...

                                  אבל כשחיפשתי את זה, גיליתי שב- 000webhost.com, אתה מקבל על מה שאתה משלם ...(התכוונתי ל החינמית...)
                                  הכל 'ייתכן' שנחסם...

                                  לא שמעתי על הגבלה כזו של חסימת curl ב- 000webhost.com, במקרה שלך בודאי השגיאה מציגה עיכוב במענה של ימות ולא חסימה גורפת של 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'], $result['error'] );
                                  print_r( $result['info'] );
                                   
                                  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);
                                      $info = curl_getinfo($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' ), 'info' => $info] );
                                  }
                                   
                                  
                                  
                                  י ה 2 תגובות תגובה אחרונה תגובה ציטוט 0
                                  • י
                                    יואל נחמיה @שואל ברצינות נערך לאחרונה על ידי יואל נחמיה

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

                                    Warning: curl_getinfo() expects at least 1 parameter, 0 given in /storage/.../copywcurl.php on line 30
                                    
                                    ש תגובה 1 תגובה אחרונה תגובה ציטוט 0
                                    • ש
                                      שואל ברצינות @יואל נחמיה נערך לאחרונה על ידי

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

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

                                      Warning: curl_getinfo() expects at least 1 parameter, 0 given in /storage/.../copywcurl.php on line 30
                                      

                                      טעות שלי, ערכתי את הקוד בהודעה הקודמת

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

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

                                        Array ( [url] => https://www.call2all.co.il/ym/api/FileAction?token=***%3A***&action=copy&what=ivr2%3A3%2F1%2F***.wav&target=ivr2%3A3%2F1%2F0%2F***.wav [content_type] => [http_code] => 0 [header_size] => 0 [request_size] => 0 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 7.010947 [namelookup_time] => 0.004131 [connect_time] => 0 [pretransfer_time] => 0 [size_upload] => 0 [size_download] => 0 [speed_download] => 0 [speed_upload] => 0 [download_content_length] => -1 [upload_content_length] => -1 [starttransfer_time] => 0 [redirect_time] => 0 [redirect_url] => [primary_ip] => 207.232.31.130 [certinfo] => Array ( ) [primary_port] => 443 [local_ip] => [local_port] => 0 )
                                        

                                        אין לי מושג מה כתוב פה.
                                        להתייאש ?

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

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

                                          url

                                          האם ערכת את הפלט או שזה הפלט המקורי?

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

                                            @שואל-ברצינות Annotation 2023-02-23 162723.png

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