• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
    • Questions
    • Teachers
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

159
Views
No logro pasar información (objeto) usando Ajax (Jquery)

Actualmente estoy luchando para pasar información de mi vista a un controlador (modelo MVC) en PHP. Estoy usando el método ajax.

Me gustaría transmitir información, como cadenas o matrices, al controlador:

 var dataToSend = [{ fieldname: 'ABC' }, { fieldname: 'DEF' }]; dataToSend = JSON.stringify({ 'list': dataToSend }); $(".application-accept").click(function(event){ $.ajax({ url: "/olad2/project/processapplication/1", type: "POST", data: dataToSend, datatype: "JSON", contentType: "application/json; charset=utf-8" }).done(function(response){ console.log(response); console.log("done"); }).fail(function(err){ console.log(err.responseText); console.log("failed"); }); });

Cuando hago eco del resultado en el controlador, me han dicho por error que no hay una matriz:

 echo json_encode(var_dump($_POST));

Que muestra (console.log()):

 <b>array</b> <i>(size=0)</i>

vacío nulo

Sé que hay mucho tema sobre este tema, pero no funciona. Usted me podría ayudar ?

pd: es mi primer post

about 3 years ago · Santiago Trujillo
1 answers
Answer question

0

Esta versión revisada funciona:

 $.ajax({ url:"https://jsonplaceholder.typicode.com/users", // url: "/olad2/project/processapplication/1", method: "POST", data: JSON.stringify({list:[{ fieldname: 'ABC' }, { fieldname: 'DEF' }]}), datatype: "JSON", contentType: "application/json; charset=utf-8" }).done(function (response) { console.log(response); console.log("done"); }).fail(function (err) { console.log(err.responseText); console.log("failed"); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

Pero incluso su versión "casi sin cambios" funcionaría con la dirección de destino typicode:

 var dataToSend = JSON.stringify({ 'list': [{ fieldname: 'ABC' }, { fieldname: 'DEF' }] }); $.ajax({ // url: "/olad2/project/processapplication/1", url: "https://jsonplaceholder.typicode.com/users", type: "POST", data: dataToSend, datatype: "JSON", contentType: "application/json; charset=utf-8" }).done(function(response) { console.log(response); console.log("done"); }).fail(function(err) { console.log(err.responseText); console.log("failed"); });
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

about 3 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error