Enregistrer les données d'une formulaire dans la base de données en utlisant php et ajax
Salut chers ainés.
Je suis un débutant et depuis quelques semaines je me débrouille à envoyer des informations d'un formulaire dans la base de données sans actualiser toute la page. Avec mes recherches, j'ai puis créé quelque chose.
Mais mon problème est que l'information est enregistrée dans la base de données mais je ne reçois aucun message de confirmation ou d'erreur.
Voici mon code de formulaire en html
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| <div style=" border: 5px red solid; ">
<script src="jquery-3.6.4.min.js"></script>
<script src="action-ajax14.js"></script>
<form id="connexion" action="action14.php" method="POST" enctype="multipart/form-data">
<div>
<h3>ENREGISTRER LE MENU NIVEAU 1</h3>
<input type="text" id="menu" name="menu" placeholder="ENREGISTRER MENU1"> <br>
<input type="submit" name="enregistrementmenu1" value="INSERER">
</div>
</form>
</div> |
Voici mon code action-ajax14.js
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| $(document).ready(function() {
$('#connexion').on('submit', function(e) {
e.preventDefault();
var $this = $(this);
$.ajax({
url: $this.attr('action'),
type: $this.attr('method'),
data: $this.serialize(),
dataType: 'json',
success: function(json) {
if(json.reponse === 'ok') {
alert('Connexion OK');
window.location.href = 'index.php';
} else {
alert('Erreur : '+ json.reponse);
}
}
});
});
}); |
Voici mon code php action14.php
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| <?php
if (isset($_POST['menu'])) {
$menu = htmlspecialchars($_POST['menu']); {
if (!empty($_POST['menu'])) {
$reqmenu = $bdd->prepare("SELECT * FROM menu1 WHERE titre_menu1 = ?");
$reqmenu->execute(array($menu));
$menuexist = $reqmenu->rowCount();
if ($menuexist === 0) {
$inserdocument = $bdd->prepare("INSERT INTO menu1 (titre_menu1, date_de_enregistrement) VALUES(?,NOW())");
$inserdocument->execute(array($menu));
$reponse = 'ok';
} else {
$reponse= "<h1 style= color:red;>LE TITRE EXISTE DEJA CHOISISEZ UN AUTRE</h1>";
}
} else {
$reponse = "<h1 style= color:red;>Tous les champs doivent etre remplir</h1>";
}
}
}
echo json_encode(['reponse' => $reponse]);
?> |
Voici mon problème aider moi chers ainés