拖放表格单元格并使用ajax更新数据库

时间:2016-03-09 10:16:12

标签: javascript php mysql ajax

长话短说我正在使用php制作游戏。 不幸的是我已经停下来了。我正在尝试使用JavaScript / Ajax和MySql数据库创建交互式库存。视觉部分将是经典的基于RPG网格的库存(6x10)。

我的目标是用户可以将广告中的项目拖放到另一个广场上,如果另一个广场被占用,则切换位置。我想使用ajax更新每个操作的数据库,以便页面不刷新。

Mockup of inventory and how the items are moved around

我已经构建了数据库,因此它拥有60个插槽(0-59),每个插槽都有一个ID。 想法是ajax调用移动槽的内容。 (请参阅此处的sql文件:Download link to sql file

我制作了一个创建html表(6x10)的php脚本,并指定了一个等于数据库列名的id。(php code)

<?php
    $conn = new mysqli("localhost", "game", "password", "game");

    $sql = "select * FROM inventory where UserID = '1'";
    $query  = $conn->query($sql) or die ($conn->error);
    $fetch = $query->fetch_object();

    $lineCount = 0;
?>

<style>
    td, th {
        border: 1px solid #999;
        padding: 0.5rem;
        min-height:20px;
        min-width:20px;
        text-align:center;
    }
</style>

<table>
    <?php
        for($i=0; $i <= 59; $i++){
            if($lineCount == 0){
               echo "<tr>";
               echo "<td id='slot_".$i."'>".$fetch->{"slot_".$i}."</td>";
               $lineCount++;
            }elseif($lineCount==9){
               echo "<td id='slot_".$i."'>".$fetch->{"slot_".$i}."</td>";
               echo "</tr>";
               $lineCount=0;
            }else{
               echo "<td id='slot_".$i."'>".$fetch->{"slot_".$i}."</td>";
               $lineCount++;
            }
        }
    ?>
</table>

html的屏幕截图:

Screenshot of html

(数字是数据库中的值。)

我试图让这个工作几天没有运气。 我接近使用它(链接:redips example page)。 使用选项:切换内容。

问题:我目前吮吸JavaScript :) 我无法使用该功能。 我面临的最大问题是拖放,并切换javaScript的一部分。 我也很难看到如何使用ajax即时更新数据库。

我甚至不确定这是否有可能成为帮凶,但我很乐意得到你的帮助。

1 个答案:

答案 0 :(得分:0)

我必须更多地了解您所面临的问题:问题何时发生? 您是否尝试过查询var_dump?等:

$query  = $conn->query($sql) or die var_dump($conn->error);

只是想知道发生了什么......:)

除此之外,我可以说你还没有用过循环来创建表格。您必须创建一个创建行的for循环,并在其中创建一个for循环,为该行创建单元格。这有道理吗?