首页 > 解决方案 > 如何将输入 id 值存储到另一个页面上的变量中?

问题描述

说我有两页。第 1 页(从数据库下载数据)包含此代码

//download_form
$id=(this variable should get the value of the input in page 2);
$stmt = $pdo->prepare("SELECT  * FROM q1  WHERE q1.id ='$id'");

第 2 页(html 表单)包含此代码。

<form method="post" action="../download_form.php" >
    <input type="submit" name="download" value="download" id="<?php echo 
     $row["id"]; ?>" class="btn-xs" />
</form>

我应该怎么做,当用户点击下载时,download_form.php 将获取/发布表单 ID 的值?

标签: javascriptphphtmlsql

解决方案


使用隐藏输入:

<input type="hidden" name="id" value="<?= $row["id"] ?>" />

然后...

$id = $_POST['id'] ? intval($_POST['id']) : null; // for syntactic sugar see http://php.net/manual/en/migration70.new-features.php#migration70.new-features.null-coalesce-op

此外,如果您直接将值传递给它,那么您的准备完全没用:

$stmt = $pdo->prepare("SELECT  * FROM q1  WHERE q1.id ='$id'");

$stmt = $pdo->prepare("SELECT  * FROM q1  WHERE q1.id = ?");
$stmt->execute([$id]);

阅读材料

输入:隐藏

PDO 准备好的报表


推荐阅读