Hallo @Werkstudent1,
ich verstehe. Den Array müsste ich am Ende in jedem Fall bevor ich es an den Client schicke in json umwandeln. Sehe ich das richig?
Ja, und nur genau einmal.
Andere Frage: Ich möchte den Request mit ajax verarbeiten. den Input schicke ich an results.php und den json möchte ich zurück haben. Wie mache ich das?
Fast genau so wie angegeben – oder an welcher Stelle hängt es?
<body> <form action="./results.php"> <label for="search">Search</label> <input type="text" id="q" name="q" /> <input type="submit"> </form>
Das for
des label
Elements muss auf ein Eingabeelement mit gleicher ID zeigen. Bei dir gibt es kein Element mit der ID search
. Mein Vorschlag für dein form
:
<form action="results.php">
<label>Search: <input type="search" name="q"></label>
<button type="submit">Submit</button>
</form>
Weiter:
jQuery('document').ready(function () { //ajax wird wird zu testzwecken nicht aufgerufen. form statt #form, dann wird die funktion aufgerufen. jQuery('form').submit(function(event){
An welche Formulare hängt sich dieses submit
eigentlich alles?
event.preventDefault(); var data = $(this).serialize() + "&" + $.param(data); $.ajax({ type: "GET", dataType: "json", url: "./results.php", //Relative or absolute path to response.php file data: data, success: function(data) {
In dieser Funktion hier hast du das Ergebnis von results.php in der Variablen data
und kannst damit arbeiten.
} }); }); });