Heim >Backend-Entwicklung >PHP-Tutorial >Warum funktioniert mein Javascript-POST nicht: Wie sende ich ein Javascript-Array an PHP?

Warum funktioniert mein Javascript-POST nicht: Wie sende ich ein Javascript-Array an PHP?

Barbara Streisand
Barbara StreisandOriginal
2024-10-30 15:48:02802Durchsuche

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

Javascript POST funktioniert nicht: Javascript-Array wird an PHP gesendet

Trotz zahlreicher Versuche sind Sie beim Übergeben eines JavaScript-Arrays auf eine Herausforderung gestoßen ein PHP-Skript per POST. Wenn Sie Hilfe bei der Lösung dieses Problems suchen, präsentieren Sie den folgenden Code:

JavaScript:

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

PHP:

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

Problemlösung:

Möglicherweise haben Sie ein Problem aufgrund eines Missverständnisses über die Funktionsweise von AJAX (Asynchrones JavaScript und XML). Während jQuery die AJAX-Nutzung vereinfacht, erfordert es ein angemessenes Verständnis des Prozesses.

In Ihrem Fall löst die Funktion sendToPHP() eine POST-Anfrage an die Seite index.php aus, wobei der Variablenparameter auf toSearchArray gesetzt ist. Es ist jedoch wichtig, eine AJAX-Erfolgshandlerfunktion zu definieren, um die Antwort des Servers zu erfassen.

Beispiel mit 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;">

Beispiel mit Catcher .php:

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

Dieses Beispiel zeigt, wie Sie einen AJAX-Aufruf auslösen, Daten an ein PHP-Skript senden und eine Antwort erhalten, sodass Sie die Antwort im angegebenen #response-Element anzeigen können die Seite. Denken Sie daran, beim Senden eines Arrays einfach das Abrufen des Textfeldwerts durch das Senden des Arrays zu ersetzen.

Das obige ist der detaillierte Inhalt vonWarum funktioniert mein Javascript-POST nicht: Wie sende ich ein Javascript-Array an PHP?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn