Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

370
Views
Intentando pasar la variable de JavaScript a PHP usando Ajax pero obtuve el error "Clave de matriz no definida"

He tenido este error durante varios días, he intentado buscar este error, pero cada vez que busco este error, da una razón diferente para el error y cuando intento agregar lo que dicen otros sitios, no funciona, por eso Pregunto aquí porque no veo qué más puedo hacer.

Estoy tratando de pasar una variable de JavaScript a PHP, pero no funciona y no tengo idea de por qué.

Aquí está mi código JavaScript:

 <head> <script type="text/javascript" src="jquery.js"> </script> </head> <script> var variable = "hello"; console.log(variable); $.ajax ({ url: "ajax.php", type: "POST", data:{pass : variable}, success: function() { alert("Success"); } }); </script>

Aquí está mi código PHP:

 $variable = $_POST['pass']; echo($variable);

Todo parece funcionar perfectamente. Escribe la variable en la consola, aparece la alerta que dice éxito. Sin embargo, recibo un mensaje de error que dice: 'Clave de matriz no definida "aprobada"'

¿Qué está causando esto? ¿Gracias?

Editar: la gente me ha dicho que use isset, agregué que eliminó el error, sin embargo, todavía no repite la variable de PHP, lo que significa que todavía no se ha pasado a PHP, todavía estoy tratando de encontrar cómo arreglar esto.

about 4 years ago · Juan Pablo Isaza
3 answers
Answer question

0

¿Puede usar las herramientas de desarrollo en el navegador Chrome que lo ayudarán a encontrar si los datos se envían correctamente al archivo php? También puede probar $_REQUEST en lugar de publicar solo para verificar qué datos vienen en SOLICITUD, ya que funciona para GET y POST. Si todavía no te ayuda.

También puedes usar

 data: {'pass':variable}

en vez de

 data: {pass:variable}

déjame saber si te funciona.

about 4 years ago · Juan Pablo Isaza Report

0

Su código frontal se ve bien, pero no conozco su entorno PHP de destino, pero tal vez su entorno no acepte formData .

De forma predeterminada, jQuery envía datos POST ajax como formData .

Intenta enviar datos como JSON

 $.ajax({ url: "ajax.php", type: "POST", data: JSON.stringify({pass : variable}), dataType: "json", contentType: "application/json; charset=utf-8", success: function(data){alert(data);}, });

Y luego probablemente tendrás que adaptar tu código php:

 $json = file_get_contents('php://input'); // Converts it into a PHP array $data = json_decode($json, true); $variable = $data['pass']; echo($variable);
about 4 years ago · Juan Pablo Isaza Report

0

Si obtiene este error en su archivo ajax.php en el que publica los datos, digo que es normal porque cuando abre ese archivo (ajax.php) es como si no hubiera $_POST['pass'] porque simplemente abrió ese archivo sin ejecutar JS para enviar datos. Si quieres recibir los datos que envías puedes hacerlo:

Su código JS lo llamo índice de archivo:

 var variable = "hello"; $.ajax ({ url: "ajax.php", type: "POST", data:{pass : variable}, success: function(res) { alert(res); } });

El archivo PHP:

 $variable = $_POST['pass']; echo($variable);

Luego, si abre ese archivo de índice, después de ejecutar el código JS, enviará los datos de la publicación a su archivo PHP y su archivo PHP hará eco de eso, luego el valor se almacenará en esa variable res que cuando todo salió bien, usted Puede ver la alerta de esa res en la página (archivo de índice).

Tenga en cuenta que, como dije, no puede abrir el archivo PHP solo porque no recibe una publicación de datos por sí solo, es normal que regrese undefined.

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!