Heim > Artikel > Web-Frontend > JS + Ajax implementiert die asynchrone PHP-Formularübermittlung
Dieses Mal werde ich Ihnen JS+Ajax zur Implementierung eines asynchronen PHP-Übermittlungsformulars vorstellen. Was sind die Vorsichtsmaßnahmen für JS+Ajax zur Implementierung eines asynchronen PHP-Übermittlungsformulars? sehen.
Oft ist es notwendig, Formulare asynchron zu übermitteln, wenn es zu viele Formulare gibt, wird es sehr unpraktisch, ElementById einzeln abzurufen.Natürlich kann JQuery die asynchrone Übermittlung von Formularen mithilfe von JQuery implementieren .form.js-Bibliothek Es scheint sehr beliebt zu seinAber manchmal möchte ich keine zusätzlichen Bibliotheken verwenden, deshalb denke ich darüber nach, es selbst zu schreiben und reines JS zu verwenden, um die asynchrone Formularübermittlung zu implementierenDie Implementierung ist wie folgt (in diesem Beispiel mit der POST-Methode senden und PHP als Serverskript verwenden)HTM L-Datei: Test
<html> <head> <script type="text/javascript" src="name_form.js"></script> </head> <body> <form action="process.php" id="ajax_form"> Username:<input type="text" name="username" id="username"/><br> <input type="button" onclick="submitForm('name_form')" value="Submit"> </form> <p id="tip"></p> </body> </html>
JS-Datei: name_form js
function createXmlHttp() { var xmlHttp = null; try { //Firefox, Opera 8.0+, Safari xmlHttp = new XMLHttpRequest(); } catch (e) { //IE try { xmlHttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { xmlHttp = new ActiveXObject("Microsoft.XMLHTTP"); } } return xmlHttp; } function submitForm(formId) { var xmlHttp = createXmlHttp(); if(!xmlHttp) { alert("您的浏览器不支持AJAX!"); return 0; } var url = 'test.php'; var postData = ""; postData = "username=" + document.getElementById('username').value; postData += "t=" + Math.random(); xmlHttp.open("POST", url, true); xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xmlHttp.onreadystatechange = function() { if(xmlHttp.readyState == 4 && xmlHttp.status == 200) { if(xmlHttp.responseText == '1') { alert('post successed'); } } } xmlHttp.send(postData); }
PHP-Datei: test.php
<?php if(isset($_POST['username']) { echo '1'; } ?>Das Prinzip des obigen Programms besteht darin, dass der Benutzer zuerst die Benutzernameninformationen in die Datei test.html eingegeben hat, dann das Formular über Ajax über die Datei name_form.js übermittelt und dann den Vorgang ausgeführt hat In der PHP-Datei wird nur festgestellt, ob der Benutzername vorhanden ist. Wenn er vorhanden ist, können Sie ihn auch in der Datenbank bearbeiten (hinzufügen, ändern, ändern). usw.) und beurteilen Sie dann das Ergebnis der Operation. Geben Sie 1 aus und beurteilen Sie die zurückgegebenen Informationen in xmlHttp.responseText. Da nur 1 ausgegeben wird, ist die Beurteilung korrekt Es erscheint eine Eingabeaufforderung mit dem Inhalt „Beitrag erfolgreich“. Auf diese Weise haben wir die asynchrone PHP-Formularübermittlung mithilfe von Ajax erfolgreich implementiert.
Hinweis: Stellen Sie sicher, dass vor dem Echo der PHP-Datei keine Ausgabe erfolgt, damit Ajax die zurückgegebenen Informationen genau abrufen kann.
Ich glaube, dass Sie die Methode beherrschen, nachdem Sie den Fall in diesem Artikel gelesen haben. Weitere spannende Informationen finden Sie in anderen verwandten Artikeln auf der chinesischen PHP-Website. Empfohlene Lektüre:Sofort zur Anmeldeseite springen, nachdem Ajax+Session fehlgeschlagen ist
Wie man mit Sitzungsfehlern umgeht, wenn darauf zugegriffen wird Ajax
Das obige ist der detaillierte Inhalt vonJS + Ajax implementiert die asynchrone PHP-Formularübermittlung. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!