php - 在php的下一页中传递当前id

标签 php mysql

我正在开发一个餐厅菜单系统,其中只有一个菜单。一个菜单有很多类别,每个类别中有多个项目。现在我已经创建了类别的创建、显示功能和项目的显示功能但我被困在项目的创建功能上,因为我需要类别的 id 才能在该特定 id 中插入项目。这是我用于在类别中显示项目的代码。

 <!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<link   href="css/bootstrap.min.css" rel="stylesheet">
<script src="js/bootstrap.min.js"></script>
</head>

<body>
<div class="container">
        <div class="row">
            <h3>Category Items</h3>
        </div>
        <div class="row">
        <p> <a href="create_items.php" class="btn btn-success">Create</a> </p>
            <table class="table table-striped table-bordered">
              <thead>
                <tr>
                  <th>ID</th>
                  <th>Name</th>
                  <th>Description</th>
                  <th>Price</th>
                </tr>
              </thead>
              <tbody>
              <?php
              require 'database.php';
                $id = null;
                if ( !empty($_GET['id'])) {
                    $id = $_REQUEST['id'];
                }

                if ( null==$id ) {
                    header("Location: index.php");
                } else {
               $pdo = Database::connect();
               $sql = "SELECT * FROM Items where I_C_id = '" . $id . "'";
               $result = $pdo->query($sql);
               foreach ($pdo->query($sql) as $row) {
                        echo '<tr>';
                        echo '<td>'. $row['I_id'] . '</td>';
                        echo '<td>'. $row['I_name'] . '</td>';
                        echo '<td>'. $row['I_desc'] . '</td>';
                        echo '<td>'. $row['I_price'] . '</td>';
                        echo '</tr>';
               }
           }
               Database::disconnect();
              ?>
              </tbody>
        </table>
    </div>
</div> <!-- /container -->

此文件获取类别的“id”并显示该特定类别的项目。现在我想创建该特定 id 的项目。我应该如何在创建页面中传递类别的 id?

最佳答案

或者通过使用 PHP session ,或者通过将 id 附加到链接,所以

<a href="create_items.php"

变成了

<a href="create_items.php?cat_id=<?=$_GET['id']?>"

与问题无关,但您需要考虑避免 SQL 注入(inject)攻击,例如How can I prevent SQL injection in PHP?

关于php - 在php的下一页中传递当前id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27741999/

相关文章:

javascript - Ajax 表单在提交时复制

php - 在 Laravel 5 中什么时候不应该使用 get()

mysql - 由于违反完整性约束而无法添加字段 : 1452 Cannot add or update a child row

mysql - 如何查找 SQL Server 中的数据库数量?

MySQL:嵌套集很慢?

php - PDO 没有正确执行绑定(bind)变量

PHP - 服务器端验证 - 这是一个好方法吗?

PHP - 如何以任何顺序测试多维数组中的重复元素值

php - PDO 不会更新数据库中的数据,为什么?

MySQL C API : Getting `MYSQL_FIELD` array from `MYSQL_STMT` ?