Autor Zpráva
Marti_n
Profil
Dobrý deň,

Riešim upload obrázkov cez AJAX. Klasicky po submite to viem spraviť, ale neviem dostať údaje do súboru, ktorý otvárama ajaxom, teda údaje o tom súbore a to tmp-name (hlavne) . Meno, typ a velkosť obrázka viem zistiť v samotnom JS, ale tmp-name potrebujem. Nemáte niekto s tým skúsenosti?

HTML:
   <input id="file_upload" type="file" name="file">
   <div id="change_image" class="profil_change_profile" onclick="javascript:change_image();">
      <div id="profil_change_text">Nahrať</div>
   </div>

PHP:
<?php

session_start(); 

$Hrac_ID = $_SESSION['username'];

$path = '../profil/player';
$secretName = sha1($Hrac_ID);

$fileName = $_FILES["file_upload"]["name"][0];

echo "fileName"; // <--- NEFUNGUJE

?>

JS:
function change_image(){

var formdata = new FormData();
var file = document.getElementById("file_upload").files[0];
formdata.append("file", file);

  var xmlhttp;

      if (window.XMLHttpRequest){

      xmlhttp=new XMLHttpRequest();

      }

      else {

      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

      }

      xmlhttp.onreadystatechange=function(){

         if (xmlhttp.readyState==4 && xmlhttp.status==200){

/* POKRACOVANIE */

         }

      }

var url = 'ajax/ajax_settings_image.php';

xmlhttp.open("POST",url,true);
xmlhttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
xmlhttp.send(formdata);

}
_es
Profil
Marti_n:
Riešim upload obrázkov cez AJAX.
„Obyčajné“ odoslanie obrázka prečo nestačí? Okrem toho, ak to aj nejako spojazdníš, tak to v niektorých prehliadačoch fungovať nebude.

...tmp-name potrebujem.
To je čo, to „tmp-name“?

onclick="javascript:change_image();"
"javascript:" tam nepatrí, no nespôsobí chybu.

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:

0