AJAX - Forma bez odświeżania strony

  • Monday, 09 October 2023
  • PHP
  • 0 Comment/s

Jeśli chcesz zapisywać dane z formularza bez odświeżania strony, możesz użyć technologii AJAX. AJAX to skrót od Asynchronous JavaScript and XML. Pozwala na asynchroniczne wysyłanie żądań HTTP do serwera i odbieranie odpowiedzi bez konieczności przeładowywania całej strony.

  1. Tworzymy naszą formę index.php

 

 <html> 
 <head>
   <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
   <script src="script.js" type="text/javascript"></script>
 </head>
 <body>  
 <form method="POST" onsubmit="return sendData();">
 <label>Name</label>
    <input type="text" name="name" id="name">
    <label>Age</label>
    <input type="text" name="age" id="age">
    <input type="submit" name="submit_form" value="Submit">
 </form>
 <div id="res" ></div>
 </body>
</html>

 

2. Tworzymy plik ze skryptem o nazwie script.js

 

 function sendData() 
{
 var name = document.getElementById("name").value;
 var age = document.getElementById("age").value;
 $.ajax({
   type: 'post',
   url: 'insert.php',
   data: {
     name:name,
     age:age
   },
   
   success: function (response) {
     $('#res').html("Name: " + name + " Age: " + age + " has been added to database");
   }
 });
   
 return false;
}

 

3. Tworzymy plik .php gdzie dane będą zapisywane np. do bazy danych insert.php

 

<?php
$name = $_POST['name'];
$age = $_POST['age'];
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "myDB";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// Check connection
if (!$conn) { die("Connection failed: " . mysqli_connect_error());
}
$sql = "INSERT INTO MyGuests (name, age)
VALUES ('$name', '$age')";
if (mysqli_query($conn, $sql)) {}
mysqli_close($conn);
?>

Zobacz DEMO


Related Tags

phpajaxforma

Share Post
PHP

How to Generate Captcha Image in PHP ?

14-09-2023
PHP

How to scroll back to top in bootstrap

30-06-2023
PHP

AJAX - Forma bez odświeżania strony

09-10-2023