Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php html表中的数量选择,每行保存到mysql数据库_Php_Jquery_Html_Mysql - Fatal编程技术网

Php html表中的数量选择,每行保存到mysql数据库

Php html表中的数量选择,每行保存到mysql数据库,php,jquery,html,mysql,Php,Jquery,Html,Mysql,我对PHP和HTML还比较陌生,所以我很抱歉不能自己解决这个问题。如果这个想法令人困惑,我也很抱歉。我会尽力解释的 我正在制作一个Discord机器人,它允许通过Discord玩桌面纸牌游戏。这个游戏包括制作一副40张牌(从数百张牌中挑选)。要制作一副牌,玩家需要在机器人上键入一长串以逗号分隔的牌名。为了避免移动用户的这种麻烦,我制作了一个网站,显示所有卡片,每行都有数量选择,所以所有移动用户需要做的是选择卡片的数量,而不是全部打印出来。网站显示像这样。。。 所以,在这一点上,我有点被下一步的

我对PHP和HTML还比较陌生,所以我很抱歉不能自己解决这个问题。如果这个想法令人困惑,我也很抱歉。我会尽力解释的

我正在制作一个Discord机器人,它允许通过Discord玩桌面纸牌游戏。这个游戏包括制作一副40张牌(从数百张牌中挑选)。要制作一副牌,玩家需要在机器人上键入一长串以逗号分隔的牌名。为了避免移动用户的这种麻烦,我制作了一个网站,显示所有卡片,每行都有数量选择,所以所有移动用户需要做的是选择卡片的数量,而不是全部打印出来。网站显示像这样。。。

所以,在这一点上,我有点被下一步的方向所困扰。我不知道如何将每行的quantity/“Amount of Copies”选择打印出来,并将其添加到数据库中。如果玩家打算使用3份“吸收”和2份“衰退”,我希望格式类似于“吸收、吸收、吸收、衰退、衰退等”。这显然是一张40张卡片的列表

我通过php while循环将数据放入表中。DiscordID和Kitname字段保存正确。“数量”下拉列表适当地显示选项的0到3。我只是不确定如何将cardname绑定到该行的数量

下面是index.php的代码

<html>
<body>
<head>Make a kit for Bakugan Generations on Discord
    <script
    src="https://code.jquery.com/jquery-3.4.1.slim.js"
    integrity="sha256-BTlTdQO9/fascB1drekrDVkaKd9PkwBymMlHOiG+qLI="
    crossorigin="anonymous"></script>
</head>

<form action="insert.php" method="post">

DiscordID: <input type="text" name="discordID" required/><br><br>
Kitname: <input type="text" name="kitname" required/><br><br>

<table id="cards" class="display" style="width:100%" border="1">
    <thead>
    <tr>
        <th>Number of Copies</th>
        <th>Card Number</th>
        <th>Card Set</th>
        <th>Cardname</th>
        <th>Energy Cost</th>
        <th>Faction</th>
        <th>Type</th>
        <th>Power</th>
        <th>Damage</th>
        <th>Text</th>
        <th>Core 1</th>
        <th>Core 2</th>
        <th>Base Bakugan</th>
        <th>Rarity</th>
    </tr>
</thead>
<tbody>
    <?php

    $host= "localhost";
    $user= "root";
    $pass= "";
    $db= "cards";

    $dbconnect = new mysqli("$host", "$user", "$pass", "$db");

    if ($dbconnect->connect_error) {
        die("Database connection failed: " . $dbconnect->connect_error);
    }

        $query = mysqli_query($dbconnect, "SELECT * FROM cardsmaster")
            or die(mysqli_error($dbconnect));

        while ($row = mysqli_fetch_array($query)) {
            echo
                "<tr>
                <td><select>  
                    <option value='0'>0</option>  
                    <option value='1'>1</option>  
                    <option value='2'>2</option>  
                    <option value='3'>3</option>   
                </select></td>
                <td>{$row['card_number']}</td>
                <td>{$row['cardset']}</td>
                <td>{$row['card_name']}</td>
                <td>{$row['energy_cost']}</td>
                <td>{$row['faction']}</td>
                <td>{$row['type']}</td>
                <td>{$row['power']}</td>
                <td>{$row['damage']}</td>
                <td>{$row['text']}</td>
                <td>{$row['core_1']}</td>
                <td>{$row['core_2']}</td>
                <td>{$row['base_bakugan']}</td>
                <td>{$row['rarity']}</td>
                </tr>";
            }

            ?>
            </tbody>
    </table>

    <input type="submit" />

</form>


<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script>
<script type="text/javascript" src="https://cdn.datatables.net/1.10.16/js/jquery.dataTables.min.js"></script>

<script>
        $(document).ready(function () {
            $('#cards').DataTable();
        });
    </script>

</body>
</html>

为巴库干人的不和谐世代制作一套装备
不和谐:

Kitname:

份数 卡号 卡片组 名片 能源成本 派别 类型 权力 损坏 正文 核心1 核心2 巴库干基地 稀有 您需要给
一个name属性,最好使用
$row['card\u name']
变量。然后每一行都会出现在您的$_POST中,您可以在那里使用它。@标记好,所以我设置了
,然后在insert.php文件中放入
$cards=$_POST['$row[card_name]QTY']但会导致无法识别的索引错误。我是否还需要在insert.php文件中执行另一个SELECT查询和循环以获取索引,或者是否有其他方法来执行此操作?请将SELECT设置为
。然后在insert.php中执行
print\r($\u POST)
并查看得到的结果。@Mark当它放入
时,我得到了一个语法错误。最后我用
$cardname='card_name'解决了这个问题就在循环中的回显之前,并将选择名称更改为
我还按照您所说的那样执行了
打印($\u POST)
,现在它显示了这一点,这是朝着正确方向迈出的一步,因为它在我选择的下拉列表的正确位置显示了3个数量。但是,如何在insert.php中将
$row[card\u name]QTY
名称作为变量?
<?php

$discordID = $_POST['discordID'];
$kitname = $_POST['kitname'];


    $host= "localhost";
    $user= "root";
    $pass= "";
    $db= "test";

    $conn = new mysqli("$host", "$user", "$pass", "$db");

        if (mysqli_connect_error()) {
            die('Connect Error('. mysqli_connect_errno().')'. mysqli_connect_error());
          }else {
            $INSERT = "INSERT INTO demo (discordID, kitname) VALUES (?, ?)";

            //statement
            $stmt = $conn->prepare($INSERT);
            $stmt->bind_param("ss", $discordID, $kitname);
            $stmt->execute();
            echo "New record inserted successfully!";
          } 
?>