我正忙着为我们的内部wiki编写一个函数,用户可以从wiki下载pdf书籍。基本上他们需要的只是一个自定义网址,例如http://10.32.6.151/index.php?title=Category:Encashments&action=pdfbook
,它将编译本书并使其可用。
为了让每个人的生活更轻松,我想通过创建一个下拉列表来简化流程,他们可以选择他们想要的书,然后点击链接下载
这是我的表单代码pdfbook.php
<?php
$servername = "XXXXXXXX";
$username = "wikidb";
$password = "XXXXXXXX";
$dbname = "XXXXXXX";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection Failed : " . $conn->connect_error);
}
$sql = "SELECT cat_id, cat_title FROM wiki_category";
$result = $conn->query($sql);
echo "<html>";
echo "<body>";
echo "<form action='generateurl.php' name='pdfbook' id='pdfbook' method='post'>";
echo "<select name='id'>";
while ($row = $result->fetch_assoc()) {
unset($id, $name);
$id = $row['cat_id'];
$name = $row['cat_title'];
echo '<option value="'.$id.'">'.$name.'</option>';
}
echo "<input type='submit' value='Submit'>";
echo "</select>";
echo "</form>";
echo "</body>";
echo "</html>";
?>
这是我的generateurl.php代码
<?php
$catname = $_POST[$id];
?>
<html>
<head>
<body>
<a class="button" type="button" href="http://10.32.6.151/index.php?title=Category:<?php echo $catname?>&action=pdfbook">Click here to Download the PDF Book</a>
</body>
</head>
</html>
当我点击提交按钮时,它会带我到带有URL的页面,但是网址不包含类别名称。因此,它不会从上一页中提取猫的名字或ID。
答案 0 :(得分:2)
您没有正确接收POST。应该......
$catname = $_POST['id'];
答案 1 :(得分:1)
在generateurl.php页面中,您应该像这样检索POST参数: $ var = $ _POST ['varName'];
这应该为您提供从上一页传递的“id”。此外,在下载URL中显示此“id”将使下载URL如下所示: http://10.32.6.151/index.php?title=Category:9662&action=pdfbook 我的意思是,将显示一个数值。如果要显示类别的名称,则需要从类别表中获取该名称,并显示该名称而不是主键,即表格的ID。