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

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

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

העלאת קבצים מJS לדף PHP

מתוזמן נעוץ נעול הועבר תכנות
11 פוסטים 4 כותבים 488 צפיות 3 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • chagoldC
    chagoldC
    chagold
    כתב ב נערך לאחרונה על ידי chagold
    #1

    אני משתמש בקוד הזה (לפנות לPHP עפ"י זה) וכנראה לא קודדתי טוב את הכותרות והPHP לא מזהה שיש קובץ (לא מזהה את הכותרת fileToUpload )

    הקוד js הוא (עפי"ז)

    var Upload = new XMLHttpRequest();
    var file = this.pathfile;
    var fileName = this.namefile
    var target = "Upload.php";
    var mimeType = "multipart/form-data"
    
    Upload.onreadystatechange = function() {
         if (this.readyState == 4 && this.status == 200) {
             console.log(this.responseText);
         }
    };
                            
    Upload.open("POST",target , true);
    Upload.setRequestHeader('Content-Type', mimeType);
    Upload.setRequestHeader('Content-Disposition', 'attachment; filename="' + fileName + '"');
    Upload.send(file);
    

    תודה מראש.

    י תגובה 1 תגובה אחרונה
    0
    • chagoldC chagold

      אני משתמש בקוד הזה (לפנות לPHP עפ"י זה) וכנראה לא קודדתי טוב את הכותרות והPHP לא מזהה שיש קובץ (לא מזהה את הכותרת fileToUpload )

      הקוד js הוא (עפי"ז)

      var Upload = new XMLHttpRequest();
      var file = this.pathfile;
      var fileName = this.namefile
      var target = "Upload.php";
      var mimeType = "multipart/form-data"
      
      Upload.onreadystatechange = function() {
           if (this.readyState == 4 && this.status == 200) {
               console.log(this.responseText);
           }
      };
                              
      Upload.open("POST",target , true);
      Upload.setRequestHeader('Content-Type', mimeType);
      Upload.setRequestHeader('Content-Disposition', 'attachment; filename="' + fileName + '"');
      Upload.send(file);
      

      תודה מראש.

      י
      י
      יוסף בן שמעון
      כתב ב נערך לאחרונה על ידי
      #2

      @chagold מה זה this.pathfile? מאיפה אתה לוקח את המידע הזה?
      בקוד שלך אני לא רואה איפה אתה מצרף את הקובץ, שליחת קובץ אמורה להיות מידע בינארי דרך טופס HTML, אם אתה רוצה לממש בעצמך טופס צריך לקבל את הגישה לקובץ עם כפתור אינפוט file, ואחרי שאתה מחזיק רפרנס לקובץ לעשות משהו כזה

      const formData = new FormData();
      formData.append('mtFile', file); // כאן צריך להיות הקובץ הבינארי
      Upload.send(formData);
      
      chagoldC תגובה 1 תגובה אחרונה
      0
      • י יוסף בן שמעון

        @chagold מה זה this.pathfile? מאיפה אתה לוקח את המידע הזה?
        בקוד שלך אני לא רואה איפה אתה מצרף את הקובץ, שליחת קובץ אמורה להיות מידע בינארי דרך טופס HTML, אם אתה רוצה לממש בעצמך טופס צריך לקבל את הגישה לקובץ עם כפתור אינפוט file, ואחרי שאתה מחזיק רפרנס לקובץ לעשות משהו כזה

        const formData = new FormData();
        formData.append('mtFile', file); // כאן צריך להיות הקובץ הבינארי
        Upload.send(formData);
        
        chagoldC
        chagoldC
        chagold
        כתב ב נערך לאחרונה על ידי
        #3
        פוסט זה נמחק!
        תגובה 1 תגובה אחרונה
        0
        • chagoldC
          chagoldC
          chagold
          כתב ב נערך לאחרונה על ידי
          #4

          השגיאה עדיין קיימת.

          י תגובה 1 תגובה אחרונה
          0
          • chagoldC chagold

            השגיאה עדיין קיימת.

            י
            י
            יוסף בן שמעון
            כתב ב נערך לאחרונה על ידי
            #5

            @chagold תביא קוד עם שגיאה

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

              https://jsfiddle.net/b6m27xks/

              chagoldC תגובה 1 תגובה אחרונה
              0
              • י יוסף בן שמעון

                https://jsfiddle.net/b6m27xks/

                chagoldC
                chagoldC
                chagold
                כתב ב נערך לאחרונה על ידי chagold
                #7

                @יוסף-בן-שמעון תודה על הקוד. העתקתיו, עדיין יש שגיאה:

                <br />
                <b>Notice</b>:  Undefined index: fileToUpload in <b>public_html/Upload.php</b> on line <b>9</b><br />
                <br />
                <b>Notice</b>:  Undefined index: fileToUpload in <b>public_html/Upload.php</b> on line <b>32</b><br />
                Sorry, your file was not uploaded.
                

                הקוד שלי

                const file = this.namefile;
                console.log(file)
                const formData = new FormData();
                
                formData.append('mtFile', file); // כאן צריך להיות הקובץ הבינארי
                
                var Upload = new XMLHttpRequest();
                
                
                const target = "Upload.php";
                
                Upload.onreadystatechange = function() {
                        if (this.readyState == 4 && this.status == 200) {
                
                            console.log(this.responseText);
                        }
                    };
                    
                Upload.open("POST",target , true);
                UploadC.send(formData);
                

                ההדפסה לקונסול מדפיסה את הקובץ כבקוד שהבאת.

                י תגובה 1 תגובה אחרונה
                0
                • chagoldC chagold

                  @יוסף-בן-שמעון תודה על הקוד. העתקתיו, עדיין יש שגיאה:

                  <br />
                  <b>Notice</b>:  Undefined index: fileToUpload in <b>public_html/Upload.php</b> on line <b>9</b><br />
                  <br />
                  <b>Notice</b>:  Undefined index: fileToUpload in <b>public_html/Upload.php</b> on line <b>32</b><br />
                  Sorry, your file was not uploaded.
                  

                  הקוד שלי

                  const file = this.namefile;
                  console.log(file)
                  const formData = new FormData();
                  
                  formData.append('mtFile', file); // כאן צריך להיות הקובץ הבינארי
                  
                  var Upload = new XMLHttpRequest();
                  
                  
                  const target = "Upload.php";
                  
                  Upload.onreadystatechange = function() {
                          if (this.readyState == 4 && this.status == 200) {
                  
                              console.log(this.responseText);
                          }
                      };
                      
                  Upload.open("POST",target , true);
                  UploadC.send(formData);
                  

                  ההדפסה לקונסול מדפיסה את הקובץ כבקוד שהבאת.

                  י
                  י
                  יוסף בן שמעון
                  כתב ב נערך לאחרונה על ידי
                  #8

                  @chagold שים לב ב PHP לפנות לקובץ באותו שם שהוא מוגדר בטופס, אם בטופס קראת לו fileToUpload אז כך הוא יקרא במערך $_FILES בקוד שלי הוא נקרא myFile

                  ש תגובה 1 תגובה אחרונה
                  1
                  • י יוסף בן שמעון

                    @chagold שים לב ב PHP לפנות לקובץ באותו שם שהוא מוגדר בטופס, אם בטופס קראת לו fileToUpload אז כך הוא יקרא במערך $_FILES בקוד שלי הוא נקרא myFile

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

                    @יוסף-בן-שמעון אמר בהעלאת קבצים מJS לדף PHP:

                    הוא נקרא myFile

                    נראה לי mtFile

                    י תגובה 1 תגובה אחרונה
                    0
                    • ש ש.ב.ח.

                      @יוסף-בן-שמעון אמר בהעלאת קבצים מJS לדף PHP:

                      הוא נקרא myFile

                      נראה לי mtFile

                      י
                      י
                      יוסף בן שמעון
                      כתב ב נערך לאחרונה על ידי
                      #10

                      @ש-ב-ח צודק, טעות מקלדת

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

                        @chagold
                        אולי הנקודה היא שצריך להעביר את הקובץ כ createReadStream ולא את השם ולא התוכן עצמו, אלא אובייקט סטריים?
                        (בJS אני לא כ"כ התעסקתי עם קבצים, אבל בNODEJS הרבה מחלקות שעובדות עם קבצים מקבלים אותם כאובייקט סטריים

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

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

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

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

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


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

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

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