Trimitere date prin POST folosind AJAX

Discutii legate de AJAX, jQuery, MooTools, Prototype, Dojo, Yahoo! UI Library,script.aculo.us, ExtJS,AngularJS, Backbone.js, Ember.js, KnockoutJS

Moderator: Moderatori

Avatar utilizator
boo
Senior Member
Mesaje: 267
Membru din: Mie Mar 24, 2004 8:16 pm
Localitate: Ploiesti
Contact:

Trimitere date prin POST folosind AJAX

Mesajde boo » Lun Ian 22, 2007 10:48 pm

Salut,

Ma confrunt de ceva vreme cu o problema in ceea ce priveste trimiterea datelor dintr-un formular prin metoda POST folosind AJAX. Nu am cunostinte foarte vaste, in acest domeniu, pot spune ca sunt incepator, asa ca am apelat la google.

Am gasit http://www-128.ibm.com/developerworks/l ... ntro7.html si am folosit acest cod:

Cod: Selectaţi tot

function callServer() {
var name = document.getElementById("name").value;
var xmlString = "<profile>" +
"  <name>" + escape(name) + "</name>" +
"</profile>";
var url = "index2.php";
xmlHttp.open("POST", url, true);
xmlHttp.setRequestHeader("Content-Type", "text/xml");
xmlHttp.onreadystatechange = confirmUpdate;
xmlHttp.send(xmlString);
}


La apelarea acestei functii primesc un mesaj de eroare "xmlHttp is not defined"... pratic am urmat toti pasii din acel tutorial si se intampla la fel.
Ma puteti ajuta spunandu-mi unde gresesc? sau ce ar mai trebui sa modifica in acel script ca sa fie functional?
Multumesc



Avatar utilizator
Dodo
Senior Member
Mesaje: 958
Membru din: Mar Aug 22, 2006 2:40 pm
Localitate: Constanta
Contact:

Mesajde Dodo » Lun Ian 22, 2007 11:01 pm

Cod: Selectaţi tot

var xmlHttp;
  try
    {
    // Firefox, Opera 8.0+, Safari
    xmlHttp=new XMLHttpRequest();
    }
  catch (e)
    {
    // Internet Explorer
    try
      {
      xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
      }
    catch (e)
      {
      try
        {
        xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
        }
      catch (e)
        {
        alert("Your browser does not support AJAX!");
        return false;
        }
      }
    }

anonim.20CM
Junior Member
Mesaje: 44
Membru din: Mie Sep 13, 2006 6:48 pm

Mesajde anonim.20CM » Lun Ian 22, 2007 11:03 pm

Cod: Selectaţi tot

http://developer.mozilla.org/en/docs/AJAX:Getting_Started

un tutorial foarte bun

tie cred ca iti da eroarea pentru ca nu ai declarat obiectul xmlHttp
dap.ro -> gazduire web pe ochi frumosi :)

Avatar utilizator
boo
Senior Member
Mesaje: 267
Membru din: Mie Mar 24, 2004 8:16 pm
Localitate: Ploiesti
Contact:

Mesajde boo » Dum Ian 28, 2007 11:39 pm

Am gasit in cele din urma aici http://www.captain.at/howto-ajax-form-post-request.php Foarte bun tutorialul, si este exact ceea ce am nevoie. Asta in cazul in care si alti vor avea aceasi problema ca si mine.
Multumesc

deVries
PHPRomania Supporter
Mesaje: 13
Membru din: Lun Apr 10, 2006 9:04 pm

Mesajde deVries » Vin Feb 09, 2007 8:33 pm

buna! si eu am o problema cu metoda post! ceea ce se intimpla e faptul ca de cind hostul meu a schimbat versiunea apache cu una mai noua nu mai pot trimite date post mai lungi de 250 caractere sau aproximativ 250.(nu le-am numarat precis).
daca trimit date cu lungime mai mica totul e ok! daca datele au lungime mai mare primesc urmatorul raspuns de la server:

HTTP/1.x 403 Forbidden
Date: Fri, 09 Feb 2007 18:30:20 GMT
Server: Apache 3
Connection: close
Transfer-Encoding: chunked
Content-Type: text/html; charset=iso-8859-1

si atit!
de asemenea daca trimit date prin GET totul merge ok! insa pentru datele trimise prin POST vad ca marimea lor s-a limitat cam la aceeasi lungime ca la datele GET ,aproximativ astea 250 caractere.

ce trebuie sa fac? vreo configurare la server sau php,ceva?pls help!

later edit:: nu e de la server, am trimis date fara caractere speciale gen & sau % si merge! cred ca trebuie sa codific cumva caracterele astea (in javascript). pina acum codificam numai pe & ca "%26" ;cred ca ar fi utila o functie care sa codifice toate caracterele speciale,scrisa in javascript! nu?

Avatar utilizator
ExcalIbvr
Senior Member
Mesaje: 1105
Membru din: Dum Mai 02, 2004 10:56 pm
Localitate: Oradea
Contact:

Mesajde ExcalIbvr » Sâm Feb 10, 2007 1:15 am

Cod: Selectaţi tot

function encode( uri )
{
  if (encodeURIComponent)
  {
    return encodeURIComponent(uri);
  }

  if (escape)
  {
    return escape(uri);
  }
}


Înapoi la “Librarii Javascript”

Cine este conectat

Utilizatori ce ce navighează pe acest forum: Niciun utilizator înregistrat și 22 vizitatori