【发布时间】:2018-05-25 10:24:59
【问题描述】:
<?php
include ('config.php');
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Platser</title>
<link rel="stylesheet" href="style.css" type="text/css"/>
<script type="text/javascript" src="js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="js/jquery-ui-1.7.2.custom.min.js"></script>
<script type="text/javascript" src="js/jquery.json-2.2.min.js"></script>
</head>
<body>
<div id="glassbox">
<?php
if(isset($_POST['Spara'])){
}
$antal = $mysqli->query("SELECT `Grupp ID` FROM `Elevgrupper` WHERE `Grupp ID`=25");
$num = $antal->num_rows;
$res = $mysqli->query("SELECT `Namn`, `Efternamn` FROM `Elever` WHERE `ID` IN (SELECT `Användar ID` FROM `Elevgrupper` WHERE `Grupp ID` = 25)");
for ($i = 1; $i<=$num; $i++){
$get_coords = mysqli_query($mysqli, "SELECT * FROM coords WHERE id = '" . $i . "'");
$row = $get_coords->fetch_assoc();
$ok = $res->data_seek($i-1);
$row1 = $res->fetch_assoc();
//
$x = $row['x_pos'];
$y = $row['y_pos'];
echo '<div id="e'. $i .'" class="e" style="left:'.$x.'px; top:'.$y.'px;"><p id="p' . $i .'">'. $row1["Namn"] . " " . $row1["Efternamn"] . '</p></div>';
}
?>
</div>
<form action="<?echo $_SERVER['PHP_SELF'];?>">
<input onclick="spara();" type="submit" name="Spara">
</form>
<div id="respond"></div>
</body>
<script type="text/javascript">
$(document).ready(function() {
var antal = document.getElementsByClassName("e");
for (var i = 1; i <= antal.length; i++) {
$("#e" + i).draggable({
containment: '#glassbox',
scroll: false
});
}
});
function spara(){
var antal = document.getElementsByClassName("e");
for (var i = 1; i <= antal.length; i++) {
var coords=[];
var coord = $("#p" + i).position();
var item={ coordTop: coord.left, coordLeft: coord.top };
coords.push(item);
var order = { coords: coords };
$.post('updatecoords.php', 'data='+$.toJSON(order), function(response){
});
}
}
</script>
</html>
<?php
if(!$_POST["data"]){
echo "Nothing Sent";
exit;
}
include ('config.php');
$data = json_decode($_POST["data"]);
foreach($data->coords as $item) {
//Extract X number for panel
$coord_X = preg_replace('/[^\d\s]/', '', $item->coordTop);
//Extract Y number for panel
$coord_Y = preg_replace('/[^\d\s]/', '', $item->coordLeft);
//escape just-in case
$x_coord = mysqli_real_escape_string($mysqli, $coord_X);
$y_coord = mysqli_real_escape_string($mysqli, $coord_Y);
//Setup Query
$sql = "UPDATE coords SET x_pos = '" . $x_coord . "' WHERE id"= . substr($data->id, -1) .;
mysqli_query($mysqli, $sql);
$sql = "UPDATE coords SET y_pos = "'. $y_coord .'" WHERE id"= . substr($data->id, -1) .;
mysqli_query($mysqli, $sql);
}
//Return Success
echo "success";
?>
如果我没记错的话,除了 spara 函数之外的所有东西都应该工作,它让我发疯,因为我什至没有收到任何错误消息,似乎它在整个脚本中运行时没有错误,也没有保存任何东西。
我正在尝试做的是一个教师工具,它从包含所有学生的数据库中放置长椅,您可以拖动这些长椅并移动到您选择的位置,这样您就可以为每个人决定座位,而无需做很多工作,因为老师。我希望通过按下运行该功能的按钮来保存布局。
【问题讨论】:
-
请提供 1) 您订单的 console.log 2) 正在发送的请求的屏幕截图(开发工具 -> 网络 -> 选择传出请求 (xhr) -> 查询字符串参数(在 Chrome 中))
标签: javascript php mysqli