eroare functia ajaxSend - Uncaught TypeError
Discutii si intrebari legate de scripturi si functii JavaScript, jQuery si Ajax, cod JavaScript in general.
-
andras
- Mesaje:430
eroare functia ajaxSend - Uncaught TypeError
Salut,
Pe local merge ajaxSend, dar pe server cind apelez functia ajaxSend() (cu obiect javascript) imi da eroarea:
Cod: Selectaţi tot
Uncaught TypeError: data[k].replace is not a function ajax.js:7
Care sa fie cauza? Cred ca e de la server dar nu stiu ce. Multumesc.
MarPlo
Mesaje:4343
Salut
Nu stiu daca e de la sever. In general, erorile din javascript (din browser) nu au legatura cu configuratia serverului.
Posibil sa fie ceva la datele din obiectul transmis la ajaxSend.
Pentru rezolvare ar fi de folos sa pui codul js si acel obiect.
andras
Mesaje:430
Se poate vedea pe serverul developper superbit.ro:1003/cms/ => oricare optiune din meniu (preferabil Proiecte ca e mai scurt) => Add => si se adauga orice date (e numai test), chiar si spatii => Save si se vede eroarea in Inspect element. Am testat in Opera. In Modzilla la apasare pe Add imi da eroarea ReferenceError: my_ajax3maa is not defined, desi functia exista in functii.js.
MarPlo
Mesaje:4343
Nu imi dau seama care e problema, e ceva la datele din parametrul 'data'. In functia ajaxSend(), unde e:
Pune acest cod si vezi ce arata in consola:
andras
Mesaje:430
Am pus console.log(data); si imi afiseaza obiect js cu date de test:
Cod: Selectaţi tot
beneficiar: "test beneficiar"
clasa: "Proiecte"
datainc: "test data"
datasfi: "test data"
denumire: "test denumire"
id: 0
numeid: "proiect_id"
stare: "test stare"
tabela: "proiecte"
Sint datele pe care ma astept sa fie preluate in obiect js data si apoi preluate cu POST in ajax.
- Edit:
Cred ca am gasit problema: in obiectul js data exista o variabila numerica $id: 0 pe care functia replace n-o poate trata. O sa modific.
MarPlo
Mesaje:4343
Daca pui acel numar ca sir, adica: '0', e posibil sa-l recunoasca.
In php:
In JS:
Cod: Selectaţi tot
var id =0;
var obj ={};
obj["'"+ id +"'"] ='ceva';
andras
Mesaje:430
L-am pus ca sir si acum functioneaza. Multumesc!
MarPlo
Mesaje:4343
Ma bucur. Am modificat in functia ajaxSend() ca sa functioneze bine si cu key /valori numerice fara sa fie necesare alte conversii.
Asta e functia in noua versiune.
Cod: Selectaţi tot
/* Ajax Function
Send "data" to "php", using the method added to "via", and pass response to "callback" function
data - json object with data to send, name:value; ex.: {"name1":"val1", "name2":"2"}
php - address of the php file where data is send
via - request method, a string: 'post', or 'get'
callback - function called to proccess the server response
*/
function ajaxSend(url, data, via, callback){
var obajx = (window.XMLHttpRequest) ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP'); // XMLHttpRequest object
//put data from "data" into a string to be send to "php"
var str_data ='';
for(var k in data){
k = k.toString(); //convert numeric key to string
//build the string with data to be sent
str_data += k +'='+ data[k].toString().replace(/\?/g, '%3F').replace(/=/g, '%3D').replace(/&/g, '%26').replace(/[ ]+/g, '%20').replace(/[\+]/g, '%2B') +'&';
}
str_data = str_data.replace(/&$/, ''); //delete ending &
//send data to php
obajx.open(via, url, true);
if(via =='post') obajx.setRequestHeader('Content-type', 'application/x-www-form-urlencoded');
obajx.send(str_data);
//check the state request, if completed, pass the response to callback function
obajx.onreadystatechange = function(){
if(obajx.readyState == 4){
/// alert(obajx.responseText); //for debug
callback(obajx.responseText);
}
}
}
andras
Mesaje:430
Am inlocuit-o si a mers din prima.
Subiecte similare
- Eroare de variabila in php 8
PHP - MySQL - XML
Primul mesaj
Salut
Am trecut la php 8 si imi da eroarea asta
Warning: Undefined variable $page in G:\site\htdocs\system\site\page.php on line 16
in...
Ultimul mesaj
Imi mai da eroarea asta
Warning: Undefined array key message
iar eu am asa
$message=$_POST ;
Edit,
rezolvat cu
$message='';
if (isset($_POST...
- Eroare la un formular cu PHP
PHP - MySQL - XML
Primul mesaj
Salut. Am si eu o problema. In primul rand nu stiu daca am postat unde trebuie si am cautat pe forum ceva asemanator cu problema mea insa nu am...
Ultimul mesaj
Am rezolvat. Multumesc oricum pentru timpul acordat. Am folosit phpmailer pt ca cei de unde am webhostul asa lucreaza. Multumesc inca o data !
- Eroare curs valutar
Scripturi de pe site
Primul mesaj
Salutare, folosesc de ceva vreme scriptul pentru curs valutar, care e foarte ok.
Recent la o validare a aparut eroarea
Uncaught SyntaxError:...
Ultimul mesaj
Nu e nici o problema.
Din ce am inteles, eroarea apare doar in validare, de la rularea codului care trebuie sa acceseze prin ajax un alt fisier.
- Eroare la incarcare json
JavaScript - jQuery - Ajax
Primul mesaj
Bună Marius
Cum rezolv să imi încarce tot fișierul .json
eoroare la
//fetch(endpoint)
//.then(blob => blob.json())
//.then(data =>...
Ultimul mesaj
Fisierul json de la acea adresa are peste 50 MB, e cam mare pentru preluare si procesare direct in pagina (client side) cu javascript.
A) Indicat...
- Eroare citire pagina cu file_get_contents
PHP - MySQL - XML
Primul mesaj
Buna ziua,
Vreau sa preiau informatiile din aceasta adresa si sa o afisez intr-o alta pagina php
URL: //79.114.46.127:5819/
Scriptul pe care...
Ultimul mesaj
Imi pare rau, mai mult nu stiu cum sa te ajut, posibil sa fie ceva cu SSL, dar nu cunosc.
Am testat scripturile; codul cu cURL e bun, a mers bine...