Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: XMLHttpRequest() przesylanie zdjęć
Forum PHP.pl > Forum > PHP
marcus753
witajcie, mam problem z tym kodem:

  1. //dodawanie danych do tablicy
  2. var tablica = new FormData();
  3. tablica.append('<?echo ini_get("session.upload_progress.name"); ?>', 'file');
  4. tablica.append("file", file);
  5. tablica.append("nazwa_pliku", nazwa_pliku);
  6. tablica.append("typ_upload", 'single_main');
  7.  
  8. var xhr = new XMLHttpRequest();
  9. xhr.onreadystatechange = function () {
  10. alert(xhr.readyState+"|"+xhr.status);
  11. if(xhr.readyState == 4 && xhr.status == 200){
  12. data = JSON.parse(xhr.responseText);
  13. if(data.komunikat=='ok'){
  14. alert("ok");
  15. }
  16. }
  17. }
  18.  
  19. xhr.open('POST', 'http://xxx.php', true);
  20. xhr.send(tablica);


wysyłam sobie dane+zdjecieza pomocą ajaxa XMLHttpRequest(); Problem polega na tym że skrypt raz działa a raz nie i to dosłownie... jego niedziałanie polega na tym że zwraca xhr.status=0 xhr.readyState=4 no i oczywiście co bym nie wpisał w pliku php to w odpowiedzi nic nie otrzymuje. Co ciekawe odpalam ten skrypt na innym kompie i tam już działa by po chwili znowu coś było nie tak.

Macie jakiś pomysł co może być nie tak ?
trueblue
Co otrzymujesz w xhr.responseText?
marcus753
Problem rozwiązany, nie wywołujcie ajaxa używając protokołu http:// bo wtedy raz mamy odpowiedż a raz nie...

Mam jeszcze jedno pytanie co może powodować błąd : JSON.parse: unexpected character ? oczywiście kod JSONA jest poprawny. kodowanie strony ?
trueblue
A to jakiego protokołu używać korzystając z Ajaxa?

Po raz kolejny proponuję ci podejrzenie odpowiedzi, będziesz widział co próbujesz parsować.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.