Autor Zpráva
Petrs2
Profil
Nevíte někdo, jak načíst data pomocí httpRequest pro File?
Mám formulář:
<form action="foto.php" method="post" enctype="multipart/form-data" onSubmit="return nactiFile(this)"> 
 <fieldset class="photo_field">
<div id="u2"> 
 <p id="u22">Nahrávání fotek</p> 
 </div> 
 <div id="files11"> 
 <div id="files"> 
 <p><input name="foto[]" type="file" class="f11"/></p> 
 <p><input name="foto[]" type="file" class="f11"/></p> 
 <p><input name="foto[]" type="file" class="f11"/></p> 
 <p><input name="foto[]" type="file" class="f11"/></p> 
 <p><input name="foto[]" type="file" class="f11"/></p> 
 </div>
<div id="ps2"> 
 <input id="ip1" type="submit" name="upload" value="nahrát" /></div> 
 </div> 
 </fieldset> 
</form>
a chci pomocí fce nactiFile() načíst data z formuláře. Jenže nevím, jak naplnit hodnoty X1 a F1, aby to fungovalo. Pokud načítám jiná data (ne FILE), tak s tím nemám problém, ale v tomto případě mi to nefunguje. name=foto je vlastně pole?? a jak s tím pracovat??. Když se pustí action přímo (ne přes httpRequest, tak to funguje, ale tady si nevím rady :(. Nepomohl by mi někdo radou nebo nasměrováním, jak ......?
Díky předem
Petr
function nactiFile(vstup) { 
 zadanaHodnota = vstup.action 
 x1=vstup.foto.value; 
 vyberData(zadanaHodnota,x1); 
 return false; 
}
function vyberData(x_url,D1) 
{ 
 F1="foto=".D1; 
 var url = x_url; 
 if (url != 0) 
 { 
 if (window.ActiveXObject) 
 { 
 httpRequest = new ActiveXObject("Microsoft.XMLHTTP"); 
 } 
 else 
 { 
 httpRequest = new XMLHttpRequest(); 
 } 
 httpRequest.open("POST", url, true); 
 httpRequest.setRequestHeader("Content-type","application/x-www-form-urlencoded");
httpRequest.onreadystatechange= function () {processRequest(); } ; 
 httpRequest.send(F1); 
 } 
 else 
 { 
 alert("nic :-("); 
 } 
}

Moderátor juriad: Vkládej prosím kódy mezi značky [pre] a [/pre] (stačí kliknout na ).
_es
Profil
Použi normálne odoslanie formulára do iframe. Nejaké odosielanie súborov cez AJAX funguje až v novších prehliadačoch.

Vaše odpověď

Mohlo by se hodit

Neumíte-li správně určit příčinu chyby, vkládejte odkazy na živé ukázky.
Užíváte-li nějakou cizí knihovnu, ukažte odpovídajícím, kde jste ji vzali.

Užitečné odkazy:

Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: