הוסטס - פורום אחסון האתרים הגדול בישראל

הוסטס - פורום אחסון האתרים הגדול בישראל (https://hosts.co.il/forums/index.php)
-   פורום תיכנות (https://hosts.co.il/forums/forumdisplay.php?f=14)
-   -   שליחת נתונים של multipart/form-data באמצעות JQ (https://hosts.co.il/forums/showthread.php?t=99121)

איציק ברבי 06-08-12 17:36

שליחת נתונים של multipart/form-data באמצעות JQ
 
איך אני עושה זה?
הרי הוא משתמש במטודה $_FILES ולא בPOST או GET
ואני משלב בניהם,
חיפשתי על זה קצת בגוגל וקיבלתי כיוון אבל לא מספיק..
תודה לעוזרים.

Haimz 06-08-12 19:57

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

איציק ברבי 06-08-12 20:03

אני חושב שאתה מתבלבל ביני לבין משהו אחר.

בניה 06-08-12 22:13

ניתן לשלוח באותו REQUEST גם multipart/form-data וגם שדות GET וגם POST
כל נתון יגיע במערך המתאים

איציק ברבי 07-08-12 01:47

ציטוט:

נכתב במקור על ידי בניה (פרסם 853618)
ניתן לשלוח באותו REQUEST גם multipart/form-data וגם שדות GET וגם POST
כל נתון יגיע במערך המתאים

אוקי,
ואיך זה בא לידי ביטוי בקוד של הJS?
זה כל השאלה?

בניה 07-08-12 09:35

זה טופס? פשוט תעשה לו SUBMIT...
אם אתה רוצה להעלות את הקובץ בצורה אסינכרונית ("AJAX")
לא כל הדפדפנים תומכים בזה, בדרך כלל משתמשים בפלאש או IFRAME או בפלאגין שבוחר את הדרך הזמינה

איציק ברבי 07-08-12 09:38

PHP קוד:

$.ajax({
            
url"Ajax.php?act=UploadImg",
            
type"POST",
            
data: $(this).serialize(),
            
success: function(callback){
                
/*if(callback.match(/(.*):::ok/i)){
                    $("form#upload").hide();
                    $("div.status").html(callback);
                }
                else{
                    alert("אירעה שגיאה במהלך העלאה");
                }*/
                
alert(callback);
                                
            }
        }); 

אני רוצה אופציה כזאת ללא שימוש בפלאגין מסויים, יש אפשרות?

בניה 07-08-12 10:37

בכל מקרה זה לא יהיה בדיוק בצורה הזו, ולא יהיה CROSS BROWSER
אנחנו משתמשים כרגע ב:
http://valums.com/ajax-upload/
שעושה לך את העבודה

איציק ברבי 07-08-12 11:13

ציטוט:

נכתב במקור על ידי בניה (פרסם 853639)
בכל מקרה זה לא יהיה בדיוק בצורה הזו, ולא יהיה CROSS BROWSER
אנחנו משתמשים כרגע ב:
http://valums.com/ajax-upload/
שעושה לך את העבודה

עמוס מידי לטעמי,
מצאתי פתרון ברשת,
בFORM שמתי את הקישור לעמוד העלאה(uppic)
וזה הקוד JS
PHP קוד:

$('form#upload').ajaxForm({
        
beforeSubmit: function() {
            $(
'div.status').html('<img src="loading.gif" alt="" />');
        },
        
success: function(callback) {
            if(
callback.match(/(.*):::ok/i)){
                $(
"form#upload").hide();
                $(
"div.status").html(callback);
            }
            else{
                
alert("אירעה שגיאה במהלך העלאה");
            }                            
        }
    }); 

תהנו חברה!

בניה 07-08-12 11:35

נראה שלא עובד בIE, גם לא 9:
http://jquery.malsup.com/form/progress.html


כל הזמנים הם GMT +2. הזמן כעת הוא 04:36.

מופעל באמצעות VBulletin גרסה 3.8.6
כל הזכויות שמורות ©
כל הזכויות שמורות לסולל יבוא ורשתות (1997) בע"מ