Ins�rer des donn�es dans MySQL avec AJAX
Bonjour,
Je souhaite ins�rer des donn�es via AJAX dans une base de donn�es MySQL.
Code javascript :
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 29 30
| function saveMapping(){
var session = "<?php echo $_SESSION['user_id']; ?>";
var input = document.getElementById('fileUpload'); // get the input
var fichier = input.files[0];
const listItems = document.querySelectorAll(".zone-groupe ul");
var i = 0;
for (i = 0; i < listItems.length; i++) {
var ulID = oElems[i].id;
var value = listItems[i].textContent;
//alert(session+fichier+ulID+value);
insertMapping(session, fichier, ulID, value);
}
}
function insertMapping(session, fichier, ulID, value){
$.ajax({
url: "./php/insert_mapping.php",
type: "POST",
data: {
USER: session,
FICHIER: fichier,
UL_ELEMENT: ulID,
UL_VALUE: value
},
processData: false,
contentType: false,
});
} |
Code PHP:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <?php
include("../authent/config.php");
$user = $_POST['USER'];
$fichier = $_POST['FICHIER'];
$ul_element = $_POST['UL_ELEMENT'];
$ul_value = $_POST['UL_VALUE'];
$sql = "INSERT INTO MAPPING (USER, FICHIER, UL_ELEMENT, UL_VALUE) VALUES ('$user', '$fichier', '$ul_element', '$ul_value')";
$stmt = $pdo->prepare($sql);
$result = $stmt->execute();
echo json_encode(array("statusCode"=>200));
?> |
Si je n'ai qu'une ligne � ins�rer et que les insert ne sont pas faits dans la boucle FOR, alors l'insertion fonctionne correctement.
Depuis que j'ai mis cette insertion dans une boucle FOR, des lignes vides sont ins�r�es (toutes les colonnes sont vides).
De plus, j'ai les erreurs ci-dessous dans la console java
Uncaught (in promise) Error: A listener indicated an asynchronous response by returning true, but the message channel closed before a response was received
Unchecked runtime.lastError: A listener indicated an asynchronous response by returning true, but the message channel closed before a response was received
J'ai �galement essay� avec ces m�thodes mais �a ne veut pas fonctionner :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| function functABC(){
$.ajax({
url: 'myPage.php',
data: {id: id},
success: function(data) {
return data;
},
complete: function(){
// do the job here
}
});
}
var response = functABC(); |
Code:
1 2 3 4 5 6 7 8 9 10 11 12
| function functABC(){
$.ajax({
url: 'myPage.php',
data: {id: id},
async: false,
success: function(data) {
return data;
}
});
// do the job here
} |
Est-ce que quelqu'un pourrait m'aider � sortir de ces probl�mes ?
Merci beaucoup