étant débutant en ajax, je tente d'enregistrer dans ma base les positions de mes images , mais cela ne fonctionne pas ....
j'ai fais plusieurs tentative , mais je n'arrive pas à résoudre se problème du à ma méconnaissance ....
ce petit fichier permet d'afficher des photos et de pouvoir les déplacer en drag dans l'ordre que l'on souhaite .
voilà ce que j'ai essayé de faire mais sans succès merci d'avance pour votre aide )
formulaire :
Code : Tout sélectionner
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Document sans titre</title>
<script src="https://code.jquery.com/jquery-1.12.4.js"></script>
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<!-- Styles de votre liste -->
<style type="text/css" media="all">
li{
display: inline-block;
margin-left: 10px;
width: 10%;
}
</style>
</head>
<body>
<ul id="sortable" >
<?php
include('connect.php');
$Id_bien = ('14');
$resultat=$pdo->query("SELECT * FROM photo_bien WHERE Id_bien = '".$Id_bien."'");
$resultat->setFetchMode(PDO::FETCH_OBJ);
while($result_bien = $resultat->fetch() )
{
?>
<li id="<?php echo $result_bien->Id_photo; ?>"><img width="150" src="<?php echo $result_bien->photo_bien; ?>"></li>
<?php
}
?>
</ul>
<script type="text/javascript">
$(document).ready(function () {
$('#sortable').sortable({
axis: 'x',
stop: function (event, ui) {
var data = $(this).sortable('serialize');
$.ajax({
data: data,
type: 'POST',
url: 'set_position.php'
});
}
});
});
</script>
</body>
</html>
Code : Tout sélectionner
<?
include('connect.php');
$sortable = $_POST['sortable'];
for ($i = 0; $i < count($sortable); $i++) {
// SQL :
$pdo->exec("update photo_bien set position ='".($i + 1)."' where Id_photo = '".$sortable[$i]."'");
}
?>