I'm trying to "convert" a very small project (list of data that can be re-arranged by dragging and dropping) from, well, I suppose usual PHP, mysqli and ajax to working with MeekroDB instead.
It works fine in its original form (this is the small PHP file that the Ajax uses):
<?
require_once __DIR__.'/../ini.php';
$SortingOrder = isset($_POST["SortingOrder_ids"]) ? $_POST["SortingOrder_ids"] : [];
if(count($SortingOrder)>0){
for($order_no= 0; $order_no < count($SortingOrder); $order_no++)
{
$query = "UPDATE SortingTable SET SortingOrder = '".($order_no+1)."' WHERE ID = '".$SortingOrder[$order_no]."'";
mysqli_query($con, $query);
}
echo true;
}else{
echo false;
}
?>
But does absolutely nothing now that I'm trying with MeekroDB:
<?
require_once __DIR__.'/../ini_meekro.php';
$SortingOrder = isset($_POST["SortingOrder_ids"]) ? $_POST["SortingOrder_ids"] : [];
if(count($SortingOrder)>0){
for($order_no= 0; $order_no < count($SortingOrder); $order_no++)
{
DB::query("UPDATE SortingTable SET SortingOrder=%i, WHERE ID=%i", $order_no+1, $SortingOrder[$order_no]);
};
echo true;
}else{
echo false;
}
?>
The javascript/jQuery script is unchanged. Of course, I have updated how the list is initially fetched from the database and displaying on the site, and that works just fine. I can also still drag things, but it never saves the new sorting order.
I have never done anything with Ajax before. I initially used the guide found here: http://learninfinity.info/drag-and-drop-table-row-sorting-ajax-php-and-mysqli/ and got it all to work nicely. But I would like it to work with MeekroDB instead, and I'm stuck.
After way too long I finally found a solution.
I don't really know or understand the big difference in the two ways to update in MeekroDB, but using the other way and making variables works.
I'll leave this up here, but I'll be very happy if someone knows a better and cleaner solution! :)