Javascript и форма

пак проблем. 1-вата форма винаги не работи. много странно независимо колко форми са.

Код:
<script type="text/javascript" language="javascript"> 
   var http_request = false; 
   var spanid = ''; 
   function makeReques(file,filename,spanidx) { 
   // request more permissions 
   spanid = spanidx; 

   http_request = false; 
   if (window.XMLHttpRequest)
	{
	http_request=new XMLHttpRequest();
	}
	// code for IE
	else if (window.ActiveXObject)
	{
	http_request=new ActiveXObject("Microsoft.XMLHTTP");
	}
  // http_request = new XMLHttpRequest(); 
   if (!http_request) { 
      alert('Cannot create XMLHTTP instance'); 
      return false; 
   } 
   // prepare the MIME POST data 
   var boundaryString = 'capitano'; 
   var boundary = '--' + boundaryString; 
   var requestbody = boundary + '\n' 
   + 'Content-Disposition: form-data; name="file"; filename="' 
      + filename + '"' + '\n' 
   + 'Content-Type: application/octet-stream' + '\n' 
   + '\n'    
   + '\n' 
   + boundary; 
    
   // do the AJAX request 
   http_request.onreadystatechange = alertContents; 
   http_request.open('POST', file, true); 
   http_request.setRequestHeader("Content-type", "multipart/form-data; boundary=\"" + boundaryString + "\""); 
   http_request.setRequestHeader("Connection", "close"); 
   http_request.setRequestHeader("Content-length", requestbody.length); 
   http_request.send(requestbody); 

} 
   function alertContents() { 

      if (http_request.readyState == 4) { 
           if (http_request.status == 200) { 
            //alert(http_request.responseText); 
         result = http_request.responseText; 
            document.getElementById(spanid).innerHTML = result;    
            } else { 
            alert('There was a problem with the request.'); 
         } 
      } 
    
   } 
    
   function get(obj,spanid) { 
      var getstr = "?"; 
      for (i=0; i<obj.childNodes.length; i++) { 
         if (obj.childNodes[i].tagName == "INPUT") { 
       obj.childNodes[i].style.display = 'none'; 
         if (obj.childNodes[i].type == "file") { 
               getstr = obj.childNodes[i].value ; 
            obj.childNodes[i].style.display = 'none'; 
              } 
         }    
          
          
      } 
      makeReques('get.php', getstr,spanid); 
   } 
</script> 
<form action="javascript:get(document.getElementById('formid1'),'spanid1');" name="formid1" id="formid1"> 
<input type="file" name="id1"> 
<input type="submit" name="button" value="Normal Submit Button"> 
<span name="myspan" id="spanid1"></span> 
</form> 
<br><br>
<form action="javascript:get(document.getElementById('formid2'),'spanid2');" name="formid2" id="formid2"> 
<input type="file" name="id2"> 
<input type="submit" name="button" value="Normal Submit Button"> 
<span name="myspan" id="spanid2"></span> 
</form> 
<br><br> 
<form action="javascript:get(document.getElementById('formid3'),'spanid3');" name="formid3" id="formid3"> 
<input type="file" name="id3"> 
<input type="submit" name="button" value="Normal Submit Button"> 
<span name="myspan" id="spanid3"></span> 
</form> 
<br><br> 
<br>


get.php

Код:
<?php
print_r($_FILES);
?>
 
хъм.. пак не работи :-D писна ми от тоя код. вижте какъв резултат вади за size, следователно, не работи :-(

Array ( [file] => Array ( [name] => laska.jpg [type] => application/octet-stream [tmp_name] => C:\wamp\tmp\php7CF2.tmp [error] => 0 [size] => 0 ) )



Array ( [file] => Array ( [name] => 2006_peugeot_908_rc_08_sb.jpg [type] => application/octet-stream [tmp_name] => C:\wamp\tmp\php7D1B.tmp [error] => 0 [size] => 0 ) )



Array ( [file] => Array ( [name] => 15_gifki_224005.gif [type] => application/octet-stream [tmp_name] => C:\wamp\tmp\php7D1D.tmp [error] => 0 [size] => 0 ) )
 
мда нещо се ебава размера ,НО ако пробваш ще видиш ,че ъплоудва файла :)
нямам време да се занимавам повече с това ,може и аз да съм объркал някой работи ... може да погледнеш линка които ти дадохме , провери там скрипта как е и дали работи ако да - значи грешката е в мен...
 
bafitu мерси много, пробвах какви ли не методи, и не става, все 0-ла връща, качва файла, но го качва като 0-ла кб размер, демек само го създава като празен контейнер.

Друг форум каза:
Нищо не се качва. За да качиш файла трябва да го прочетеш. JavaScript не може да чете файлове от машината на потребителя (освен бисквитки)

Този номер се прави със скрит iframe
 
мда не съм до гледал ...
направо съм преуморен тия дни..
човек утре с малко късмет ако имам свободно време ще ти дам работеща версия...тоя път съм сигурен ,че ще работи ;)
само не ти обещавам ,че ще е утре щото знам ли кво може да излезе...абе тия дни ще е...
ако искаш пиши един скайп да ме подсетиш :)
 

Back
Горе