الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

[مشكلة]: ارسال ملف بالاجاكس

بدأه newcpp في 17 مارس 2009 · 8 رد · 903 مشاهدة · في قسم البرمجة بــ Javascript
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم ورحمة الله وبركاته

واجهتنى مشكلة اورجوا ان اجد الحل منكم

وهو محاولة ارسال ملف بالاجاكس

والكود كالتالى

<script type="text/javascript" language="javascript"> 
function createRequestObject() {
   var req;
   if(window.XMLHttpRequest){
      req = new XMLHttpRequest();
   } else if(window.ActiveXObject) {
      req = new ActiveXObject("Microsoft.XMLHTTP");
   } else {
      alert('حصل خطأ في طلب الصفحة...الرجاء المحاولة مرة أخرى وإذا لم تنفع جرب أن تنزل نسخة جديدة من المتصفح');
   }
   return req;
}
var http = createRequestObject();
function Send() {
 http.open('post', 'send.php');
 http.setRequestHeader('Content-Type','multipart/form-data');
 http.onreadystatechange = handleResponse;
 http.send('q='+document.getElementById('file').value );
}
function handleResponse() {
   var Ajax = document.getElementById("Ajax");
   Ajax.innerHTML = 'جارى التحميل ....';
   if(http.readyState == 4 && http.status == 200){
      var response = http.responseText;
      if(response) {
         Ajax.innerHTML = response;
      }
   }
}
</script>

<input name="file" id="file" type="file" size="40" />
<input name="Button" type="button" value="   ارسال   " onclick="Send();return false;" />
<div id="Ajax"></div>

واستخدمت هذا الكود مع الارسال

http.setRequestHeader('Content-Type','multipart/form-data');

فهل فى مشكلة بالكود

ام ينقصه شيئ

وشكرا لكم

تم تعديل هذه المشاركة بواسطة newcpp في 17 مارس 2009 في 11:55

#2

المشكله في هذه سطر

http.onreadystatechange = handleResponse;

استبدله بهذه

http.onreadystatechange =  function(){handleResponse();};

سبب المشكله انه قبل استخدام الـ Anonymous Function كان سكربت يستدعي الFunction الخاصه بمعالجة الرد مره واحد فقط

#3

اولا احب اشكرك على الرد

وجربت استبدال الكود ولكن مازالت المشكله لا يتم ارسال الملف

وشكرا مره اخرى

تم تعديل هذه المشاركة بواسطة newcpp في 19 مارس 2009 في 21:40

#4

انا جربته و عمل لدي ؟ الان ما مشكلة التي تواجهك بضبط ؟

عدم استدعاء الملف ؟ ام ارسال قيم ؟

#5

شكرا على المتابعه

والمشكله ان الملا يتم استقباله فى الصفحه الاخرى مع العلم انه عند ارسال الملف بالطريقه العاديه يتم رفعه

#6

لا يمكنك ارسال ملف عن طريق اياكس هذه ميزه غير متاحه بعد , يمكن استبداله بــiframe

#7

شكرا ياغالى

ومشكور على المتابعه

#8

السلام عليكم

جرب حط الfunction send()

#9

شكرا اخ احمد للمرور

وممكن توضيح اين اضعها

مواضيع مشابهة