Maison >développement back-end >tutoriel php >Pourquoi mon POST Javascript ne fonctionne-t-il pas : comment envoyer un tableau Javascript à PHP ?

Pourquoi mon POST Javascript ne fonctionne-t-il pas : comment envoyer un tableau Javascript à PHP ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-30 15:48:02826parcourir

Why is My Javascript POST Not Working: How Do I Send a Javascript Array to PHP?

Javascript POST ne fonctionne pas : envoi d'un tableau Javascript à PHP

Malgré de nombreuses tentatives, vous avez rencontré un défi en transmettant un tableau JavaScript à PHP un script PHP via POST. Cherchant de l'aide pour résoudre ce problème, vous présentez le code suivant :

JavaScript :

function sendToPHP() {
$.post("index.php", { "variable": toSearchArray });
}

PHP :

<?php 
    $myval = $_POST['variable'];
    print_r ($myval);
    ?>

Résolution du problème :

Vous pourriez être confronté à un problème en raison d'une mauvaise compréhension du fonctionnement d'AJAX (JavaScript et XML asynchrones). Bien que jQuery simplifie l'utilisation d'AJAX, cela nécessite une bonne compréhension du processus.

Dans votre cas, la fonction sendToPHP() déclenche une requête POST vers la page index.php avec le paramètre variable défini sur toSearchArray. Cependant, il est crucial de définir une fonction de gestionnaire de succès AJAX pour capturer la réponse du serveur.

Exemple utilisant index.php :

<html>
<head>
<title>Test</title>
<script src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
<script type="text/javascript">
$(document).ready(function(){
    $('#btn').click(function(){
        var txt=$('#txt').val();
        if(txt == ''){
            alert("Enter some text");
        } else {
            $.post('catcher.php', {'text':txt}, function(data){
                $('#response').text(data.message);
            }, 'json');
        }
    });
});
</script>
</head>
<body>
<input type="text" id="txt">
<input type="button" id="btn">
<pre id="response" style="overflow:auto;width:800px;height:600px;margin:0 auto;border:1px solid black;">

Exemple utilisant catcher .php :

<?php
if(!empty($_POST)){
    $output = array();
    $output['message'] = "Success!";
    echo json_encode($output);
}

Cet exemple montre comment déclencher un appel AJAX, envoyer des données à un script PHP et recevoir une réponse, vous permettant d'afficher la réponse dans l'élément #response désigné sur la page. N'oubliez pas que lors de l'envoi d'un tableau, remplacez simplement la récupération de la valeur de la zone de texte par l'envoi du tableau.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn